Μέθοδοι ολοκλήρωσης με 1C

Ποιες είναι οι πιο σημαντικές απαιτήσεις για επιχειρηματικές εφαρμογές; Μερικές από τις πιο σημαντικές εργασίες είναι οι ακόλουθες:

  • Ευκολία αλλαγής/προσαρμογής της λογικής της εφαρμογής σε αλλαγές επιχειρηματικών εργασιών.
  • Εύκολη ενσωμάτωση με άλλες εφαρμογές.

Ο τρόπος με τον οποίο επιλύεται η πρώτη εργασία στο 1C περιγράφηκε εν συντομία στην ενότητα "Προσαρμογή και υποστήριξη". του παρόντος άρθρου; Θα επιστρέψουμε σε αυτό το ενδιαφέρον θέμα σε επόμενο άρθρο. Σήμερα θα μιλήσουμε για το δεύτερο καθήκον, την ένταξη.

Εργασίες ολοκλήρωσης

Οι εργασίες ενοποίησης μπορεί να είναι διαφορετικές. Για την επίλυση ορισμένων προβλημάτων, αρκεί μια απλή διαδραστική ανταλλαγή δεδομένων - για παράδειγμα, η μεταφορά μιας λίστας εργαζομένων σε μια τράπεζα για την έκδοση πλαστικών καρτών μισθού. Για πιο σύνθετες εργασίες, μπορεί να είναι απαραίτητη η πλήρως αυτοματοποιημένη ανταλλαγή δεδομένων, πιθανώς με αναφορά στην επιχειρηματική λογική ενός εξωτερικού συστήματος. Υπάρχουν εργασίες που είναι εξειδικευμένες, όπως η ενοποίηση με εξωτερικό εξοπλισμό (για παράδειγμα, εξοπλισμός λιανικής, φορητοί σαρωτές, κ.λπ.) ή με παλαιού τύπου ή εξαιρετικά εξειδικευμένα συστήματα (για παράδειγμα, με συστήματα αναγνώρισης ετικετών RFID). Είναι εξαιρετικά σημαντικό να επιλέξετε τον καταλληλότερο μηχανισμό ολοκλήρωσης για κάθε εργασία.

Επιλογές ενσωμάτωσης με 1C

Υπάρχουν διαφορετικές προσεγγίσεις για την υλοποίηση της ενσωμάτωσης με εφαρμογές 1C· ποια να επιλέξετε εξαρτάται από τις απαιτήσεις της εργασίας.

  1. Με βάση την υλοποίηση μηχανισμούς ολοκλήρωσηςπαρέχεται από την πλατφόρμα, το δικό της εξειδικευμένο API στην πλευρά της εφαρμογής 1C (για παράδειγμα, ένα σύνολο υπηρεσιών Web ή HTTP που θα καλούν εφαρμογές τρίτων για ανταλλαγή δεδομένων με την εφαρμογή 1C). Το πλεονέκτημα αυτής της προσέγγισης είναι η αντίσταση του API στις αλλαγές στην εφαρμογή από την πλευρά της εφαρμογής 1C. Η ιδιαιτερότητα της προσέγγισης είναι ότι είναι απαραίτητο να αλλάξετε τον πηγαίο κώδικα μιας τυπικής λύσης 1C, η οποία ενδέχεται να απαιτεί προσπάθεια κατά τη συγχώνευση πηγαίων κωδίκων κατά τη μετάβαση σε μια νέα έκδοση της διαμόρφωσης. Σε αυτή την περίπτωση, μια νέα προοδευτική λειτουργία μπορεί να έρθει στη διάσωση - επεκτάσεις διαμόρφωσης. Οι επεκτάσεις είναι, στην ουσία, ένας μηχανισμός πρόσθετων που σας επιτρέπει να δημιουργείτε προσθήκες σε λύσεις εφαρμογών χωρίς να αλλάζετε τις ίδιες τις λύσεις εφαρμογών. Η μετακίνηση του API ενσωμάτωσης στην επέκταση διαμόρφωσης θα σας επιτρέψει να αποφύγετε δυσκολίες κατά τη συγχώνευση διαμορφώσεων κατά τη μετάβαση σε μια νέα έκδοση μιας τυπικής λύσης.
  2. Χρήση μηχανισμών ολοκλήρωσης πλατφόρμας που παρέχουν εξωτερική πρόσβαση στο μοντέλο αντικειμένου εφαρμογής και δεν απαιτούν τροποποίηση της εφαρμογής ή δημιουργία επέκτασης. Το πλεονέκτημα αυτής της προσέγγισης είναι ότι δεν υπάρχει ανάγκη αλλαγής της εφαρμογής 1C. Μείον - εάν η εφαρμογή 1C έχει βελτιωθεί, τότε ενδέχεται να απαιτούνται βελτιώσεις στην ενσωματωμένη εφαρμογή. Ένα παράδειγμα αυτής της προσέγγισης είναι η χρήση του πρωτοκόλλου OData για ενοποίηση, που υλοποιείται στο πλάι της πλατφόρμας 1C:Enterprise (περισσότερα για αυτό παρακάτω).
  3. Χρήση έτοιμων πρωτοκόλλων εφαρμογών που υλοποιούνται σε τυπικές λύσεις 1C. Πολλές τυπικές λύσεις από την 1C και τους συνεργάτες εφαρμόζουν τα δικά τους πρωτόκολλα εφαρμογών, εστιασμένα σε συγκεκριμένες εργασίες, με βάση τους μηχανισμούς ολοκλήρωσης που παρέχει η πλατφόρμα. Όταν χρησιμοποιείτε αυτούς τους μηχανισμούς, δεν χρειάζεται να γράφετε κώδικα στην πλευρά της εφαρμογής 1C, επειδή Χρησιμοποιούμε τις τυπικές δυνατότητες της λύσης εφαρμογής. Στην πλευρά της εφαρμογής 1C, χρειάζεται μόνο να κάνουμε ορισμένες ρυθμίσεις.

Μηχανισμοί ολοκλήρωσης στην πλατφόρμα 1C:Enterprise

Εισαγωγή/εξαγωγή αρχείων

Ας υποθέσουμε ότι αντιμετωπίζουμε το έργο της αμφίδρομης ανταλλαγής δεδομένων μεταξύ μιας εφαρμογής 1C και μιας αυθαίρετης εφαρμογής. Για παράδειγμα, πρέπει να συγχρονίσουμε μια λίστα προϊόντων (Κατάλογος Ονοματολογίας) μεταξύ της εφαρμογής 1C και μιας αυθαίρετης εφαρμογής.

Μέθοδοι ολοκλήρωσης με 1C
Για να λύσετε αυτό το πρόβλημα, μπορείτε να γράψετε μια επέκταση που κατεβάζει τον κατάλογο Ονοματολογίας σε ένα αρχείο συγκεκριμένης μορφής (κείμενο, XML, JSON, ...) και μπορεί να διαβάσει αυτήν τη μορφή.

Η πλατφόρμα υλοποιεί έναν μηχανισμό για τη σειριοποίηση αντικειμένων εφαρμογής σε XML τόσο απευθείας, μέσω των μεθόδων καθολικού περιβάλλοντος WriteXML/ReadXML, όσο και χρησιμοποιώντας το βοηθητικό αντικείμενο XDTO (XML Data Transfer Objects).

Οποιοδήποτε αντικείμενο στο σύστημα 1C:Enterprise μπορεί να σειριοποιηθεί σε μια αναπαράσταση XML και αντίστροφα.

Αυτή η συνάρτηση θα επιστρέψει μια αναπαράσταση XML του αντικειμένου:

Функция Объект_В_XML(Объект)
    ЗаписьXML = Новый ЗаписьXML();
    ЗаписьXML.УстановитьСтроку();
    ЗаписатьXML(ЗаписьXML, Объект);
    Возврат ЗаписьXML.Закрыть();
КонецФункции

Έτσι θα μοιάζει η εξαγωγή του καταλόγου Ονοματολογίας σε XML χρησιμοποιώντας XDTO:

&НаСервере
Процедура ЭкспортXMLНаСервере()	
	НовыйСериализаторXDTO  = СериализаторXDTO;
	НоваяЗаписьXML = Новый ЗаписьXML();
	НоваяЗаписьXML.ОткрытьФайл("C:DataНоменклатура.xml", "UTF-8");
	
	НоваяЗаписьXML.ЗаписатьОбъявлениеXML();
	НоваяЗаписьXML.ЗаписатьНачалоЭлемента("СправочникНоменклатура");
	
	Выборка = Справочники.Номенклатура.Выбрать();
	
	Пока Выборка.Следующий() Цикл 
		ОбъектНоменклатура = Выборка.ПолучитьОбъект();
		НовыйСериализаторXDTO.ЗаписатьXML(НоваяЗаписьXML, ОбъектНоменклатура, НазначениеТипаXML.Явное);
	КонецЦикла;
	
	НоваяЗаписьXML.ЗаписатьКонецЭлемента();
	НоваяЗаписьXML.Закрыть();	
КонецПроцедуры

Τροποποιώντας απλώς τον κώδικα, εξάγουμε τον κατάλογο σε JSON. Τα προϊόντα θα γραφτούν σε έναν πίνακα. Για ποικιλία, εδώ είναι η αγγλική έκδοση της σύνταξης:

&AtServer
Procedure ExportJSONOnServer()
	NewXDTOSerializer  = XDTOSerializer;
	NewJSONWriter = New JSONWriter();
	NewJSONWriter.OpenFile("C:DataНоменклатура.json", "UTF-8");
	
	NewJSONWriter.WriteStartObject();
	NewJSONWriter.WritePropertyName("СправочникНоменклатура");
	NewJSONWriter.WriteStartArray();
	
	Selection = Catalogs.Номенклатура.Select();	
	
	While Selection.Next() Do 
		NomenclatureObject = Selection.GetObject();
		
		NewJSONWriter.WriteStartObject();
		
		NewJSONWriter.WritePropertyName("Номенклатура");
		NewXDTOSerializer.WriteJSON(NewJSONWriter, NomenclatureObject, XMLTypeAssignment.Implicit);
		
		NewJSONWriter.WriteEndObject();
	EndDo;
	
	NewJSONWriter.WriteEndArray();
	NewJSONWriter.WriteEndObject();
	NewJSONWriter.Close();	
EndProcedure

Τότε το μόνο που μένει είναι να μεταφερθούν τα δεδομένα στον τελικό καταναλωτή. Η πλατφόρμα 1C:Enterprise υποστηρίζει τα κύρια πρωτόκολλα Διαδικτύου HTTP, FTP, POP3, SMTP, IMAP, συμπεριλαμβανομένων των ασφαλών εκδόσεων τους. Μπορείτε επίσης να χρησιμοποιήσετε HTTP ή/και υπηρεσίες Web για τη μεταφορά δεδομένων.

HTTP και υπηρεσίες web

Μέθοδοι ολοκλήρωσης με 1C

Οι εφαρμογές 1C μπορούν να υλοποιήσουν τις δικές τους υπηρεσίες HTTP και web, καθώς και να καλέσουν HTTP και υπηρεσίες web που υλοποιούνται από εφαρμογές τρίτων.

Διεπαφή REST και πρωτόκολλο OData

Ξεκινώντας από την έκδοση 8.3.5, η πλατφόρμα 1C:Enterprise μπορεί αυτόματα δημιουργήστε μια διεπαφή REST για ολόκληρη τη λύση εφαρμογής. Οποιοδήποτε αντικείμενο διαμόρφωσης (κατάλογος, έγγραφο, μητρώο πληροφοριών κ.λπ.) μπορεί να είναι διαθέσιμο για λήψη και τροποποίηση δεδομένων μέσω της διεπαφής REST. Η πλατφόρμα χρησιμοποιεί το πρωτόκολλο ως πρωτόκολλο πρόσβασης OData έκδοση 3.0. Η δημοσίευση των υπηρεσιών OData εκτελείται από το μενού Configurator «Διαχείριση -> Δημοσίευση σε διακομιστή web», πρέπει να είναι επιλεγμένο το πλαίσιο ελέγχου «Δημοσίευση τυπικής διεπαφής OData». Υποστηρίζονται μορφές Atom/XML και JSON. Μετά τη δημοσίευση της λύσης εφαρμογής στον διακομιστή web, τα συστήματα τρίτων μπορούν να έχουν πρόσβαση σε αυτήν μέσω της διεπαφής REST χρησιμοποιώντας αιτήματα HTTP. Για να εργαστείτε με την εφαρμογή 1C μέσω του πρωτοκόλλου OData, δεν απαιτείται προγραμματισμός στην πλευρά 1C.

Έτσι, μια διεύθυνση URL όπως http://<сервер>/<конфигурация>/odata/standard.odata/Catalog_Номенклатура θα μας επιστρέψει τα περιεχόμενα του καταλόγου Ονοματολογίας σε μορφή XML - μια συλλογή στοιχείων εισόδου (ο τίτλος του μηνύματος παραλείπεται για συντομία):

<entry>
	<id>http://server/Config/odata/standard.odata/Catalog_Номенклатура(guid'35d1f6e4-289b-11e6-8ba4-e03f49b16074')</id>
	<category term="StandardODATA.Catalog_Номенклатура" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/>
	<title type="text"/>
	<updated>2016-06-06T16:42:17</updated>
	<author/>
	<summary/>
	<link rel="edit" href="Catalog_Номенклатура(guid'35d1f6e4-289b-11e6-8ba4-e03f49b16074')" title="edit-link"/>
	<content type="application/xml">
		<m:properties  >
			<d:Ref_Key>35d1f6e4-289b-11e6-8ba4-e03f49b16074</d:Ref_Key>
			<d:DataVersion>AAAAAgAAAAA=</d:DataVersion>
			<d:DeletionMark>false</d:DeletionMark>
			<d:Code>000000001</d:Code>
			<d:Description>Кондиционер Mitsubishi</d:Description>
			<d:Описание>Мощность 2,5 кВт, режимы работы: тепло/холод</d:Описание>
		</m:properties>
	</content>
</entry>
<entry>
	<id>http://server/Config/odata/standard.odata/Catalog_Номенклатура(guid'35d1f6e5-289b-11e6-8ba4-e03f49b16074')</id>
	<category term="StandardODATA.Catalog_Номенклатура" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/>
...

Προσθέτοντας τη συμβολοσειρά "?$format=application/json" στη διεύθυνση URL, λαμβάνουμε τα περιεχόμενα του καταλόγου Ονοματολογίας σε μορφή JSON (URL της φόρμας http://<сервер>/<конфигурация>/odata/standard.odata/Catalog_Номенклатура?$format=application/json ):

{
"odata.metadata": "http://server/Config/odata/standard.odata/$metadata#Catalog_Номенклатура",
"value": [{
"Ref_Key": "35d1f6e4-289b-11e6-8ba4-e03f49b16074",
"DataVersion": "AAAAAgAAAAA=",
"DeletionMark": false,
"Code": "000000001",
"Description": "Кондиционер Mitsubishi",
"Описание": "Мощность 2,5 кВт, режимы работы: тепло/холод"
},{
"Ref_Key": "35d1f6e5-289b-11e6-8ba4-e03f49b16074",
"DataVersion": "AAAAAwAAAAA=",
"DeletionMark": false,
"Code": "000000002",
"Description": "Кондиционер Daikin",
"Описание": "Мощность 3 кВт, режимы работы: тепло/холод"
}, …

Εξωτερικές πηγές δεδομένων

Μέθοδοι ολοκλήρωσης με 1C
Σε ορισμένες περιπτώσεις, η ανταλλαγή δεδομένων μέσω εξωτερικές πηγές δεδομένων μπορεί να είναι η καλύτερη λύση. Οι εξωτερικές πηγές δεδομένων είναι ένα αντικείμενο διαμόρφωσης εφαρμογής 1C που σας επιτρέπει να αλληλεπιδράτε με οποιαδήποτε βάση δεδομένων συμβατή με ODBC, τόσο για ανάγνωση όσο και για εγγραφή. Οι εξωτερικές πηγές δεδομένων είναι διαθέσιμες τόσο σε Windows όσο και σε Linux.

Μηχανισμός ανταλλαγής δεδομένων

Μηχανισμός ανταλλαγής δεδομένων προορίζεται τόσο για τη δημιουργία γεωγραφικά κατανεμημένων συστημάτων που βασίζονται στο 1C:Enterprise, όσο και για την οργάνωση ανταλλαγής δεδομένων με άλλα συστήματα πληροφοριών που δεν βασίζονται στο 1C:Enterprise.

Αυτός ο μηχανισμός χρησιμοποιείται ενεργά σε υλοποιήσεις 1C και το φάσμα των εργασιών που επιλύονται με τη βοήθειά του είναι πολύ ευρύ. Αυτό περιλαμβάνει ανταλλαγή δεδομένων μεταξύ εφαρμογών 1C που είναι εγκατεστημένες στα υποκαταστήματα του οργανισμού και ανταλλαγή μεταξύ της εφαρμογής 1C και του ιστότοπου του ηλεκτρονικού καταστήματος και ανταλλαγή δεδομένων μεταξύ της εφαρμογής διακομιστή 1C και του προγράμματος-πελάτη για κινητά (που δημιουργήθηκε με τη χρήση της πλατφόρμας για κινητά 1C:Enterprise) και πολλά περισσότερο.

Μία από τις βασικές έννοιες στον μηχανισμό ανταλλαγής δεδομένων είναι το σχέδιο ανταλλαγής. Ένα σχέδιο ανταλλαγής είναι ένας ειδικός τύπος αντικειμένου της πλατφόρμας εφαρμογής 1C, που καθορίζει, ειδικότερα, τη σύνθεση των δεδομένων που θα συμμετέχουν στην ανταλλαγή (ποιοι κατάλογοι, έγγραφα, μητρώα κ.λπ.). Το σχέδιο ανταλλαγής περιέχει επίσης πληροφορίες σχετικά με τους συμμετέχοντες στην ανταλλαγή (οι λεγόμενοι κόμβοι ανταλλαγής).
Το δεύτερο στοιχείο του μηχανισμού ανταλλαγής δεδομένων είναι ο μηχανισμός καταχώρισης αλλαγών. Αυτός ο μηχανισμός παρακολουθεί αυτόματα το σύστημα για αλλαγές στα δεδομένα που πρέπει να μεταφερθούν στους τελικούς χρήστες ως μέρος του σχεδίου ανταλλαγής. Χρησιμοποιώντας αυτόν τον μηχανισμό, η πλατφόρμα παρακολουθεί τις αλλαγές που έχουν συμβεί από τον τελευταίο συγχρονισμό και σας επιτρέπει να ελαχιστοποιήσετε τον όγκο των δεδομένων που μεταφέρονται κατά την επόμενη περίοδο συγχρονισμού.

Η ανταλλαγή δεδομένων πραγματοποιείται χρησιμοποιώντας μηνύματα XML συγκεκριμένης δομής. Το μήνυμα περιέχει δεδομένα που έχουν αλλάξει από τον τελευταίο συγχρονισμό με τον κόμβο και ορισμένες πληροφορίες υπηρεσίας. Η δομή μηνυμάτων υποστηρίζει την αρίθμηση μηνυμάτων και σας επιτρέπει να λαμβάνετε επιβεβαίωση από τον κόμβο παραλήπτη ότι τα μηνύματα έχουν ληφθεί. Αυτή η επιβεβαίωση περιέχεται σε κάθε μήνυμα που προέρχεται από τον κόμβο λήψης, με τη μορφή του αριθμού του τελευταίου ληφθέντος μηνύματος. Η αρίθμηση των μηνυμάτων επιτρέπει στην πλατφόρμα να κατανοήσει ποια δεδομένα έχουν ήδη μεταδοθεί με επιτυχία στον κόμβο λήψης και να αποφύγει την αναμετάδοση μεταδίδοντας μόνο δεδομένα που έχουν αλλάξει από τότε που ο κόμβος αποστολής έλαβε το τελευταίο μήνυμα με μια απόδειξη για τα δεδομένα που έλαβε ο κόμβος λήψης. Αυτό το σχήμα λειτουργίας εξασφαλίζει εγγυημένη παράδοση ακόμη και με αναξιόπιστα κανάλια μετάδοσης και απώλεια μηνυμάτων.

Εξωτερικά εξαρτήματα

Σε ορισμένες περιπτώσεις, κατά την επίλυση προβλημάτων ολοκλήρωσης, πρέπει να αντιμετωπίσετε συγκεκριμένες απαιτήσεις, για παράδειγμα, πρωτόκολλα αλληλεπίδρασης, μορφές δεδομένων, οι οποίες δεν προβλέπονται στην πλατφόρμα 1C:Enterprise. Για μια τέτοια σειρά εργασιών, η πλατφόρμα παρέχει τεχνολογία εξωτερικού εξαρτήματος, το οποίο σας επιτρέπει να δημιουργείτε δυναμικά plug-in λειτουργικές μονάδες που επεκτείνουν τη λειτουργικότητα του 1C:Enterprise.

Ένα τυπικό παράδειγμα εργασίας με παρόμοιες απαιτήσεις θα ήταν η ενσωμάτωση μιας λύσης εφαρμογής 1C με εξοπλισμό λιανικής, που κυμαίνεται από ζυγαριές έως ταμειακές μηχανές και σαρωτές γραμμωτού κώδικα. Τα εξωτερικά στοιχεία μπορούν να συνδεθούν τόσο στην πλευρά του διακομιστή 1C: Enterprise όσο και στην πλευρά του πελάτη (συμπεριλαμβανομένου, ενδεικτικά, του προγράμματος-πελάτη web, καθώς και επόμενη έκδοση της πλατφόρμας για κινητά 1C: Επιχείρηση). Η τεχνολογία των εξωτερικών στοιχείων παρέχει μια αρκετά απλή και κατανοητή διεπαφή λογισμικού (C++) για την αλληλεπίδραση των στοιχείων με την πλατφόρμα 1C:Enterprise, η οποία πρέπει να υλοποιηθεί από τον προγραμματιστή.

Οι δυνατότητες που ανοίγονται όταν χρησιμοποιείτε εξωτερικά εξαρτήματα είναι πολύ μεγάλες. Μπορείτε να εφαρμόσετε την αλληλεπίδραση χρησιμοποιώντας ένα συγκεκριμένο πρωτόκολλο ανταλλαγής δεδομένων με εξωτερικές συσκευές και συστήματα, να δημιουργήσετε συγκεκριμένους αλγόριθμους για την επεξεργασία δεδομένων και μορφές δεδομένων κ.λπ.

Ξεπερασμένοι μηχανισμοί ολοκλήρωσης

Η πλατφόρμα παρέχει μηχανισμούς ενοποίησης που δεν συνιστώνται για χρήση σε νέες λύσεις. αφήνονται μέσα για λόγους συμβατότητας προς τα πίσω, καθώς και σε περίπτωση που το άλλο μέρος δεν μπορεί να συνεργαστεί με πιο σύγχρονα πρωτόκολλα. Ένα από αυτά είναι η εργασία με αρχεία μορφής DBF (υποστηρίζεται στην ενσωματωμένη γλώσσα χρησιμοποιώντας το αντικείμενο XBase).

Ένας άλλος μηχανισμός ενσωμάτωσης παλαιού τύπου είναι η χρήση της τεχνολογίας COM (διατίθεται μόνο στην πλατφόρμα των Windows). Η πλατφόρμα 1C:Enterprise παρέχει δύο μεθόδους ενσωμάτωσης για τα Windows χρησιμοποιώντας τεχνολογία COM: Διακομιστής αυτοματισμού και Εξωτερική σύνδεση. Μοιάζουν πολύ, αλλά μια από τις θεμελιώδεις διαφορές είναι ότι στην περίπτωση του διακομιστή Αυτοματισμού, ξεκινά μια πλήρης εφαρμογή πελάτη 1C:Enterprise 8 και στην περίπτωση εξωτερικής σύνδεσης, μια σχετικά μικρή COM σε διαδικασία ο διακομιστής εκκινείται. Δηλαδή, εάν εργάζεστε μέσω του διακομιστή Αυτοματισμού, μπορείτε να χρησιμοποιήσετε τη λειτουργικότητα της εφαρμογής πελάτη και να εκτελέσετε ενέργειες παρόμοιες με τις διαδραστικές ενέργειες του χρήστη. Όταν χρησιμοποιείτε μια εξωτερική σύνδεση, μπορείτε να χρησιμοποιήσετε μόνο συναρτήσεις επιχειρηματικής λογικής και μπορούν να εκτελεστούν τόσο στην πλευρά του πελάτη της σύνδεσης, όπου δημιουργείται ένας διακομιστής COM που βρίσκεται σε διαδικασία, όσο και μπορείτε να καλέσετε επιχειρηματική λογική στον διακομιστή 1C:Enterprise πλευρά.

Η τεχνολογία COM μπορεί επίσης να χρησιμοποιηθεί για πρόσβαση σε εξωτερικά συστήματα από τον κώδικα εφαρμογής στην πλατφόρμα 1C:Enterprise. Σε αυτήν την περίπτωση, η εφαρμογή 1C λειτουργεί ως πελάτης COM. Αλλά πρέπει να υπενθυμίσουμε ότι αυτοί οι μηχανισμοί θα λειτουργήσουν μόνο εάν ο διακομιστής 1C λειτουργεί σε περιβάλλον Windows.

Μηχανισμοί ολοκλήρωσης που εφαρμόζονται σε τυπικές διαμορφώσεις

Μορφή δεδομένων επιχείρησης

Μέθοδοι ολοκλήρωσης με 1C
Σε έναν αριθμό διαμορφώσεων 1C (λίστα παρακάτω), με βάση τον μηχανισμό ανταλλαγής δεδομένων πλατφόρμας που περιγράφηκε παραπάνω, υλοποιείται ένας έτοιμος μηχανισμός ανταλλαγής δεδομένων με εξωτερικές εφαρμογές, ο οποίος δεν απαιτεί αλλαγή του πηγαίου κώδικα των διαμορφώσεων (προετοιμασία δεδομένων η ανταλλαγή γίνεται στις ρυθμίσεις των λύσεων εφαρμογών):

  • "1C:ERP Enterprise Management 2.0"
  • "Σύνθετος αυτοματισμός 2"
  • "Enterprise Accounting", έκδοση 3.0
  • "Λογιστική για μια επιχείρηση CORP", έκδοση 3.0
  • "Retail", έκδοση 2.0
  • "Βασική Διαχείριση Εμπορίου", έκδοση 11
  • Trade Management, Έκδοση 11
  • «Μισθοί και διαχείριση προσωπικού CORP», έκδοση 3

Η μορφή που χρησιμοποιείται για την ανταλλαγή δεδομένων είναι EnterpriseData, βασισμένο σε XML. Η μορφή είναι προσανατολισμένη στις επιχειρήσεις - οι δομές δεδομένων που περιγράφονται σε αυτήν αντιστοιχούν σε επιχειρηματικές οντότητες (έγγραφα και στοιχεία καταλόγου) που παρουσιάζονται σε προγράμματα 1C, για παράδειγμα: πράξη ολοκλήρωσης, εντολή παραλαβής μετρητών, αντισυμβαλλόμενος, είδος κ.λπ.

Η ανταλλαγή δεδομένων μεταξύ της εφαρμογής 1C και μιας εφαρμογής τρίτου μέρους μπορεί να πραγματοποιηθεί:

  • μέσω ενός αποκλειστικού καταλόγου αρχείων
  • μέσω καταλόγου FTP
  • μέσω μιας υπηρεσίας web που έχει αναπτυχθεί στην πλευρά της εφαρμογής 1C. Το αρχείο δεδομένων μεταβιβάζεται ως παράμετρος στις μεθόδους web
  • μέσω ηλεκτρονικού ταχυδρομείου

Στην περίπτωση ανταλλαγής μέσω μιας υπηρεσίας web, μια εφαρμογή τρίτου μέρους θα ξεκινήσει μια περίοδο λειτουργίας ανταλλαγής δεδομένων καλώντας τις αντίστοιχες μεθόδους web της εφαρμογής 1C. Σε άλλες περιπτώσεις, ο εκκινητής της συνεδρίας ανταλλαγής θα είναι η εφαρμογή 1C (τοποθετώντας το αρχείο δεδομένων στον κατάλληλο κατάλογο ή στέλνοντας το αρχείο δεδομένων στη διαμορφωμένη διεύθυνση email).
Επίσης στην πλευρά 1C μπορείτε να διαμορφώσετε πόσο συχνά θα γίνεται ο συγχρονισμός (για επιλογές με ανταλλαγή αρχείων μέσω καταλόγου και email):

  • σύμφωνα με το χρονοδιάγραμμα (με καθορισμένη συχνότητα)
  • χειροκίνητα? ο χρήστης θα πρέπει να ξεκινά χειροκίνητα τον συγχρονισμό κάθε φορά που τον χρειάζεται

Επιβεβαίωση μηνυμάτων

Οι εφαρμογές 1C διατηρούν αρχεία με τα απεσταλμένα και λαμβανόμενα μηνύματα συγχρονισμού και περιμένουν το ίδιο από εφαρμογές τρίτων. Αυτό σας επιτρέπει να χρησιμοποιήσετε τον μηχανισμό αρίθμησης μηνυμάτων που περιγράφεται παραπάνω στην ενότητα «Μηχανισμός ανταλλαγής δεδομένων».

Κατά τη διάρκεια του συγχρονισμού, οι εφαρμογές 1C μεταδίδουν μόνο πληροφορίες σχετικά με αλλαγές που έχουν συμβεί με επιχειρηματικές οντότητες από τον τελευταίο συγχρονισμό (για να ελαχιστοποιηθεί ο όγκος των πληροφοριών που μεταφέρονται). Κατά τον πρώτο συγχρονισμό, η εφαρμογή 1C θα ανεβάσει όλες τις επιχειρηματικές οντότητες (για παράδειγμα, στοιχεία του βιβλίου αναφοράς αντικειμένων) σε μορφή EnterpriseData σε ένα αρχείο XML (καθώς είναι όλες «νέες» για την εξωτερική εφαρμογή). Η εφαρμογή τρίτου μέρους πρέπει να επεξεργαστεί τις πληροφορίες από το αρχείο XML που έλαβε από το 1C και, κατά την επόμενη συνεδρία συγχρονισμού, να τοποθετήσει στο αρχείο που αποστέλλεται στο 1C, σε μια ειδική ενότητα XML, πληροφορίες ότι το μήνυμα από το 1C με συγκεκριμένο αριθμό ήταν επιτυχώς έλαβε. Το μήνυμα απόδειξης είναι ένα σήμα προς την εφαρμογή 1C ότι όλες οι επιχειρηματικές οντότητες έχουν υποστεί επιτυχή επεξεργασία από την εξωτερική εφαρμογή και δεν υπάρχει πλέον ανάγκη μετάδοσης πληροφοριών σχετικά με αυτές. Εκτός από την απόδειξη, ένα αρχείο XML από μια εφαρμογή τρίτου μέρους μπορεί επίσης να περιέχει δεδομένα για συγχρονισμό από την εφαρμογή (για παράδειγμα, έγγραφα για την πώληση αγαθών και υπηρεσιών).

Μετά τη λήψη του μηνύματος απόδειξης, η εφαρμογή 1C επισημαίνει όλες τις αλλαγές που μεταδόθηκαν στο προηγούμενο μήνυμα ως επιτυχώς συγχρονισμένες. Μόνο μη συγχρονισμένες αλλαγές σε επιχειρηματικές οντότητες (δημιουργία νέων οντοτήτων, αλλαγή και διαγραφή υπαρχόντων) θα αποστέλλονται στην εξωτερική εφαρμογή κατά την επόμενη περίοδο συγχρονισμού.

Μέθοδοι ολοκλήρωσης με 1C
Κατά τη μεταφορά δεδομένων από μια εξωτερική εφαρμογή στην εφαρμογή 1C, η εικόνα αντιστρέφεται. Η εξωτερική εφαρμογή πρέπει να συμπληρώσει την ενότητα παραλαβής του αρχείου XML ανάλογα και να τοποθετήσει τα επιχειρηματικά δεδομένα για συγχρονισμό από την πλευρά της στη μορφή EnterpriseData.

Μέθοδοι ολοκλήρωσης με 1C

Απλοποιημένη ανταλλαγή δεδομένων χωρίς χειραψία

Για περιπτώσεις απλής ενσωμάτωσης, όταν αρκεί μόνο η μεταφορά πληροφοριών από μια εφαρμογή τρίτου μέρους στην εφαρμογή 1C και δεν απαιτείται αντίστροφη μεταφορά δεδομένων από την εφαρμογή 1C σε εφαρμογή τρίτου μέρους (για παράδειγμα, ενσωμάτωση μιας ηλεκτρονικής κατάστημα που μεταφέρει πληροφορίες πωλήσεων στο 1C: Accounting), υπάρχει μια απλοποιημένη επιλογή εργασίας μέσω μιας υπηρεσίας web (χωρίς επιβεβαίωση), η οποία δεν απαιτεί ρυθμίσεις στο πλάι της εφαρμογής 1C.

Προσαρμοσμένες λύσεις ενοποίησης

Υπάρχει μια τυπική λύση "1C: Μετατροπή δεδομένων", η οποία χρησιμοποιεί μηχανισμούς πλατφόρμας για τη μετατροπή και την ανταλλαγή δεδομένων μεταξύ τυπικών διαμορφώσεων 1C, αλλά μπορεί επίσης να χρησιμοποιηθεί για ενοποίηση με εφαρμογές τρίτων.

Ενοποίηση με τραπεζικές λύσεις

Πρότυπο "Τράπεζα πελατών", που αναπτύχθηκε από ειδικούς της 1C πριν από περισσότερα από 10 χρόνια, έχει γίνει στην πραγματικότητα βιομηχανικό πρότυπο στη Ρωσία. Το επόμενο βήμα προς αυτή την κατεύθυνση είναι η τεχνολογία DirectBank, το οποίο σας επιτρέπει να στέλνετε έγγραφα πληρωμής στην τράπεζα και να λαμβάνετε αντίγραφα κίνησης από την τράπεζα απευθείας από τα προγράμματα του συστήματος 1C:Enterprise πατώντας ένα κουμπί στο πρόγραμμα 1C. δεν απαιτεί εγκατάσταση και εκτέλεση πρόσθετων προγραμμάτων στον υπολογιστή-πελάτη.

Υπάρχουν επίσης πρότυπο για την ανταλλαγή δεδομένων σε έργα μισθοδοσίας.

Άλλος

Αξίζει να αναφερθεί πρωτόκολλο ανταλλαγής μεταξύ του συστήματος 1C:Enterprise και του ιστότοπου, πρότυπο ανταλλαγής εμπορικών πληροφοριών CommerceML (αναπτύχθηκε από κοινού με τις Microsoft, Intel, Price.ru και άλλες εταιρείες), πρότυπο για την ανταλλαγή δεδομένων για συναλλαγές απόκτησης.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο