วิธีการรวมเข้ากับ 1C

ข้อกำหนดที่สำคัญที่สุดสำหรับการใช้งานทางธุรกิจคืออะไร? งานที่สำคัญที่สุดบางประการมีดังต่อไปนี้:

  • ความง่ายในการเปลี่ยนแปลง/ปรับตรรกะของแอปพลิเคชันให้เข้ากับการเปลี่ยนแปลงงานทางธุรกิจ
  • บูรณาการกับแอปพลิเคชันอื่นได้ง่าย

วิธีแก้ไขงานแรกใน 1C มีการอธิบายสั้น ๆ ไว้ในส่วน "การปรับแต่งและการสนับสนุน" ของบทความนี้; เราจะกลับมาที่หัวข้อที่น่าสนใจนี้ในบทความหน้า วันนี้เราจะพูดถึงงานที่สอง การบูรณาการ

งานบูรณาการ

งานบูรณาการอาจแตกต่างกัน เพื่อแก้ไขปัญหาบางอย่าง การแลกเปลี่ยนข้อมูลเชิงโต้ตอบแบบธรรมดาก็เพียงพอแล้ว - ตัวอย่างเช่น การโอนรายชื่อพนักงานไปยังธนาคารเพื่อออกบัตรพลาสติกเงินเดือน สำหรับงานที่ซับซ้อนมากขึ้น อาจจำเป็นต้องมีการแลกเปลี่ยนข้อมูลอัตโนมัติโดยสมบูรณ์ ซึ่งอาจอ้างอิงถึงตรรกะทางธุรกิจของระบบภายนอก มีงานที่มีลักษณะเฉพาะทาง เช่น บูรณาการกับอุปกรณ์ภายนอก (เช่น อุปกรณ์ขายปลีก เครื่องสแกนมือถือ เป็นต้น) หรือกับระบบเดิมหรือระบบเฉพาะทางสูง (เช่น กับระบบจดจำแท็ก RFID) การเลือกกลไกบูรณาการที่เหมาะสมที่สุดสำหรับแต่ละงานเป็นสิ่งสำคัญอย่างยิ่ง

ตัวเลือกการรวมเข้ากับ 1C

มีแนวทางที่แตกต่างกันในการใช้งานการรวมเข้ากับแอปพลิเคชัน 1C วิธีใดที่จะเลือกขึ้นอยู่กับความต้องการของงาน

  1. การดำเนินการตาม กลไกการบูรณาการจัดทำโดยแพลตฟอร์ม ซึ่งเป็น API เฉพาะทางของตัวเองในด้านแอปพลิเคชัน 1C (ตัวอย่างเช่น ชุดของบริการเว็บหรือ HTTP ที่จะเรียกแอปพลิเคชันบุคคลที่สามเพื่อแลกเปลี่ยนข้อมูลกับแอปพลิเคชัน 1C) ข้อดีของแนวทางนี้คือความต้านทานของ API ต่อการเปลี่ยนแปลงในการใช้งานในด้านแอปพลิเคชัน 1C ลักษณะเฉพาะของแนวทางนี้คือจำเป็นต้องเปลี่ยนซอร์สโค้ดของโซลูชัน 1C มาตรฐานซึ่งอาจต้องใช้ความพยายามในการรวมซอร์สโค้ดเมื่อย้ายไปยังการกำหนดค่าเวอร์ชันใหม่ ในกรณีนี้ฟังก์ชันการทำงานแบบก้าวหน้าใหม่สามารถช่วยได้ - ส่วนขยายการกำหนดค่า. โดยพื้นฐานแล้วส่วนขยายคือกลไกปลั๊กอินที่ช่วยให้คุณสร้างส่วนเพิ่มเติมในโซลูชันแอปพลิเคชันโดยไม่ต้องเปลี่ยนโซลูชันแอปพลิเคชันด้วยตนเอง การย้าย API การบูรณาการไปยังส่วนขยายการกำหนดค่าจะช่วยให้คุณหลีกเลี่ยงปัญหาในการรวมการกำหนดค่าเมื่อย้ายไปยังโซลูชันมาตรฐานเวอร์ชันใหม่
  2. การใช้กลไกการรวมแพลตฟอร์มที่ให้การเข้าถึงภายนอกไปยังโมเดลออบเจ็กต์แอปพลิเคชัน และไม่จำเป็นต้องแก้ไขแอปพลิเคชันหรือการสร้างส่วนขยาย ข้อดีของแนวทางนี้คือไม่จำเป็นต้องเปลี่ยนแอปพลิเคชัน 1C ลบ - หากแอปพลิเคชัน 1C ได้รับการปรับปรุง อาจจำเป็นต้องมีการปรับปรุงในแอปพลิเคชันแบบรวม ตัวอย่างของแนวทางนี้คือการใช้โปรโตคอล OData สำหรับการบูรณาการ ซึ่งใช้งานที่ด้านข้างของแพลตฟอร์ม 1C:Enterprise (ข้อมูลเพิ่มเติมด้านล่าง)
  3. การใช้โปรโตคอลแอปพลิเคชันสำเร็จรูปที่ใช้ในโซลูชัน 1C มาตรฐาน โซลูชันมาตรฐานจำนวนมากจาก 1C และพันธมิตรใช้โปรโตคอลแอปพลิเคชันของตนเอง โดยเน้นที่งานเฉพาะ โดยอิงตามกลไกการรวมที่จัดทำโดยแพลตฟอร์ม เมื่อใช้กลไกเหล่านี้ไม่จำเป็นต้องเขียนโค้ดในฝั่งแอปพลิเคชัน 1C เพราะ เราใช้ความสามารถมาตรฐานของโซลูชันแอปพลิเคชัน ในด้านแอปพลิเคชัน 1C เราจำเป็นต้องทำการตั้งค่าบางอย่างเท่านั้น

กลไกการรวมในแพลตฟอร์ม 1C: Enterprise

นำเข้า/ส่งออกไฟล์

สมมติว่าเรากำลังเผชิญกับงานการแลกเปลี่ยนข้อมูลแบบสองทิศทางระหว่างแอปพลิเคชัน 1C และแอปพลิเคชันโดยพลการ ตัวอย่างเช่น เราจำเป็นต้องซิงโครไนซ์รายการผลิตภัณฑ์ (ไดเร็กทอรีระบบการตั้งชื่อ) ระหว่างแอปพลิเคชัน 1C และแอปพลิเคชันที่กำหนดเอง

วิธีการรวมเข้ากับ 1C
เพื่อแก้ไขปัญหานี้ คุณสามารถเขียนส่วนขยายที่ดาวน์โหลดไดเร็กทอรี Nomenclature ลงในไฟล์ในรูปแบบใดรูปแบบหนึ่ง (ข้อความ, XML, JSON, ...) และสามารถอ่านรูปแบบนี้ได้

แพลตฟอร์มดังกล่าวใช้กลไกสำหรับการทำให้ออบเจ็กต์แอปพลิเคชันเป็นอนุกรมใน XML ทั้งโดยตรง ผ่านวิธีบริบทส่วนกลางของ WriteXML/ReadXML และใช้ออบเจ็กต์เสริม XDTO (XML Data Transfer Objects)

ออบเจ็กต์ใดๆ ในระบบ 1C:Enterprise สามารถซีเรียลไลซ์เป็นการแสดง XML และในทางกลับกัน

ฟังก์ชั่นนี้จะส่งคืนการแสดง XML ของวัตถุ:

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

นี่คือสิ่งที่ส่งออกไดเร็กทอรี Nomenclature ไปยัง 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 และ/หรือบริการบนเว็บเพื่อถ่ายโอนข้อมูลได้

HTTP และบริการบนเว็บ

วิธีการรวมเข้ากับ 1C

แอปพลิเคชัน 1C สามารถใช้ HTTP และบริการบนเว็บของตนเองได้ เช่นเดียวกับการโทร HTTP และบริการบนเว็บที่ดำเนินการโดยแอปพลิเคชันบุคคลที่สาม

อินเทอร์เฟซ REST และโปรโตคอล OData

เริ่มต้นจากเวอร์ชัน 8.3.5 แพลตฟอร์ม 1C:Enterprise สามารถทำได้โดยอัตโนมัติ สร้างอินเทอร์เฟซ REST สำหรับโซลูชันการใช้งานทั้งหมด ออบเจ็กต์การกำหนดค่าใดๆ (ไดเร็กทอรี เอกสาร การลงทะเบียนข้อมูล ฯลฯ) สามารถให้พร้อมสำหรับการรับและแก้ไขข้อมูลผ่านทางอินเทอร์เฟซ REST แพลตฟอร์มใช้โปรโตคอลเป็นโปรโตคอลการเข้าถึง โอดาต้า เวอร์ชัน 3.0 การเผยแพร่บริการ OData ดำเนินการจากเมนูตัวกำหนดค่า "การดูแลระบบ -> การเผยแพร่บนเว็บเซิร์ฟเวอร์" ต้องเลือกช่องทำเครื่องหมาย "เผยแพร่อินเทอร์เฟซ OData มาตรฐาน" รองรับรูปแบบ Atom/XML และ JSON หลังจากเผยแพร่โซลูชันแอปพลิเคชันบนเว็บเซิร์ฟเวอร์แล้ว ระบบของบริษัทอื่นจะสามารถเข้าถึงได้ผ่านอินเทอร์เฟซ 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 สำหรับงานที่หลากหลายดังกล่าว แพลตฟอร์มจะจัดเตรียมไว้ให้ เทคโนโลยีส่วนประกอบภายนอกซึ่งช่วยให้คุณสร้างโมดูลปลั๊กอินแบบไดนามิกที่ขยายฟังก์ชันการทำงานของ 1C:Enterprise

ตัวอย่างทั่วไปของงานที่มีข้อกำหนดคล้ายกันคือการบูรณาการโซลูชันแอปพลิเคชัน 1C เข้ากับอุปกรณ์การค้าปลีก ตั้งแต่เครื่องชั่งจนถึงเครื่องบันทึกเงินสดและเครื่องสแกนบาร์โค้ด ส่วนประกอบภายนอกสามารถเชื่อมต่อได้ทั้งบนฝั่งเซิร์ฟเวอร์ 1C:Enterprise และฝั่งไคลเอ็นต์ (รวมถึงแต่ไม่จำกัดเพียง เว็บไคลเอ็นต์ รวมถึง เวอร์ชันถัดไปของแพลตฟอร์มมือถือ 1C:องค์กร) เทคโนโลยีของส่วนประกอบภายนอกมอบอินเทอร์เฟซซอฟต์แวร์ (C ++) ที่ค่อนข้างง่ายและเข้าใจได้สำหรับการโต้ตอบของส่วนประกอบกับแพลตฟอร์ม 1C:Enterprise ซึ่งนักพัฒนาจะต้องนำไปใช้

ความเป็นไปได้ที่เกิดขึ้นเมื่อใช้ส่วนประกอบภายนอกนั้นกว้างมาก คุณสามารถใช้การโต้ตอบโดยใช้โปรโตคอลการแลกเปลี่ยนข้อมูลเฉพาะกับอุปกรณ์และระบบภายนอก สร้างอัลกอริธึมเฉพาะสำหรับการประมวลผลข้อมูลและรูปแบบข้อมูล ฯลฯ

กลไกการรวมระบบที่ล้าสมัย

แพลตฟอร์มนี้มีกลไกการรวมที่ไม่แนะนำให้ใช้ในโซลูชันใหม่ พวกเขาถูกทิ้งไว้ด้วยเหตุผลของความเข้ากันได้แบบย้อนหลัง และในกรณีที่อีกฝ่ายไม่สามารถทำงานกับโปรโตคอลที่ทันสมัยกว่านี้ได้ หนึ่งในนั้นคือการทำงานกับไฟล์รูปแบบ DBF (รองรับในภาษาในตัวโดยใช้วัตถุ XBase)

กลไกการรวมระบบแบบดั้งเดิมอีกประการหนึ่งคือการใช้เทคโนโลยี COM (มีเฉพาะบนแพลตฟอร์ม Windows เท่านั้น) แพลตฟอร์ม 1C:Enterprise มีวิธีการรวมสองวิธีสำหรับ Windows โดยใช้เทคโนโลยี COM: เซิร์ฟเวอร์อัตโนมัติและการเชื่อมต่อภายนอก พวกมันคล้ายกันมาก แต่ความแตกต่างพื้นฐานประการหนึ่งก็คือในกรณีของเซิร์ฟเวอร์ Automation จะมีการเปิดตัวแอปพลิเคชันไคลเอนต์ 1C:Enterprise 8 เต็มรูปแบบและในกรณีของการเชื่อมต่อภายนอก COM ในกระบวนการที่ค่อนข้างเล็ก เซิร์ฟเวอร์เปิดตัวแล้ว นั่นคือหากคุณทำงานผ่านเซิร์ฟเวอร์ Automation คุณสามารถใช้ฟังก์ชันการทำงานของแอปพลิเคชันไคลเอ็นต์และดำเนินการคล้ายกับการดำเนินการแบบโต้ตอบของผู้ใช้ได้ เมื่อใช้การเชื่อมต่อภายนอก คุณสามารถใช้ได้เฉพาะฟังก์ชันตรรกะทางธุรกิจเท่านั้น และสามารถดำเนินการได้ทั้งบนฝั่งไคลเอ็นต์ของการเชื่อมต่อ โดยที่เซิร์ฟเวอร์ COM ในกระบวนการถูกสร้างขึ้น และคุณสามารถเรียกตรรกะทางธุรกิจบนเซิร์ฟเวอร์ 1C:Enterprise ด้านข้าง.

เทคโนโลยี COM ยังสามารถใช้เพื่อเข้าถึงระบบภายนอกจากโค้ดแอปพลิเคชันบนแพลตฟอร์ม 1C:Enterprise ในกรณีนี้แอปพลิเคชัน 1C จะทำหน้าที่เป็นไคลเอ็นต์ COM แต่ควรจำไว้ว่ากลไกเหล่านี้จะใช้งานได้ก็ต่อเมื่อเซิร์ฟเวอร์ 1C ทำงานในสภาพแวดล้อม Windows

กลไกการรวมที่ใช้ในการกำหนดค่ามาตรฐาน

รูปแบบข้อมูลองค์กร

วิธีการรวมเข้ากับ 1C
ในการกำหนดค่า 1C จำนวนหนึ่ง (รายการด้านล่าง) ตามกลไกการแลกเปลี่ยนข้อมูลแพลตฟอร์มที่อธิบายไว้ข้างต้น มีการใช้กลไกสำเร็จรูปสำหรับการแลกเปลี่ยนข้อมูลกับแอปพลิเคชันภายนอก ซึ่งไม่จำเป็นต้องเปลี่ยนซอร์สโค้ดของการกำหนดค่า (การเตรียมข้อมูล การแลกเปลี่ยนเสร็จสิ้นในการตั้งค่าโซลูชันแอปพลิเคชัน):

  • "1C:การจัดการองค์กร ERP 2.0"
  • "ระบบอัตโนมัติที่ซับซ้อน 2"
  • "การบัญชีองค์กร" รุ่น 3.0
  • "การบัญชีสำหรับองค์กร CORP" รุ่น 3.0
  • "ค้าปลีก" รุ่น 2.0
  • “การจัดการการค้าขั้นพื้นฐาน” ฉบับที่ 11
  • การจัดการการค้า ฉบับที่ 11
  • “บริษัทบริหารเงินเดือนและบุคลากร” รุ่นที่ 3

รูปแบบที่ใช้แลกเปลี่ยนข้อมูลคือ ข้อมูลองค์กรอิงตาม XML รูปแบบนี้เป็นเชิงธุรกิจ - โครงสร้างข้อมูลที่อธิบายไว้ในนั้นสอดคล้องกับเอนทิตีธุรกิจ (เอกสารและองค์ประกอบไดเรกทอรี) ที่นำเสนอในโปรแกรม 1C เช่น: การดำเนินการให้เสร็จสิ้น, คำสั่งรับเงินสด, คู่สัญญา, รายการ ฯลฯ

การแลกเปลี่ยนข้อมูลระหว่างแอปพลิเคชัน 1C และแอปพลิเคชันบุคคลที่สามสามารถเกิดขึ้นได้:

  • ผ่านไดเร็กทอรีไฟล์เฉพาะ
  • ผ่านไดเร็กทอรี FTP
  • ผ่านบริการเว็บที่ใช้งานบนฝั่งแอปพลิเคชัน 1C ไฟล์ข้อมูลจะถูกส่งผ่านเป็นพารามิเตอร์ไปยังวิธีการเว็บ
  • ทางอีเมล

ในกรณีของการแลกเปลี่ยนผ่านบริการบนเว็บ แอปพลิเคชันบุคคลที่สามจะเริ่มต้นเซสชันการแลกเปลี่ยนข้อมูลโดยการเรียกวิธีการเว็บที่เกี่ยวข้องของแอปพลิเคชัน 1C ในกรณีอื่น ผู้ริเริ่มเซสชันการแลกเปลี่ยนจะเป็นแอปพลิเคชัน 1C (โดยการวางไฟล์ข้อมูลในไดเร็กทอรีที่เหมาะสมหรือส่งไฟล์ข้อมูลไปยังที่อยู่อีเมลที่กำหนดค่าไว้)
นอกจากนี้ในฝั่ง 1C คุณสามารถกำหนดค่าความถี่ที่การซิงโครไนซ์จะเกิดขึ้น (สำหรับตัวเลือกที่มีการแลกเปลี่ยนไฟล์ผ่านไดเร็กทอรีและอีเมล):

  • ตามกำหนดเวลา (โดยมีความถี่ที่กำหนด)
  • ด้วยตนเอง; ผู้ใช้จะต้องเริ่มการซิงโครไนซ์ด้วยตนเองทุกครั้งที่ต้องการ

รับทราบข้อความ

แอปพลิเคชัน 1C เก็บบันทึกข้อความการซิงโครไนซ์ที่ส่งและรับ และคาดหวังสิ่งเดียวกันจากแอปพลิเคชันบุคคลที่สาม วิธีนี้ช่วยให้คุณใช้กลไกการกำหนดหมายเลขข้อความที่อธิบายไว้ข้างต้นในส่วน "กลไกการแลกเปลี่ยนข้อมูล"

ในระหว่างการซิงโครไนซ์แอปพลิเคชัน 1C จะส่งเฉพาะข้อมูลเกี่ยวกับการเปลี่ยนแปลงที่เกิดขึ้นกับองค์กรธุรกิจนับตั้งแต่การซิงโครไนซ์ครั้งล่าสุด (เพื่อลดจำนวนข้อมูลที่ถ่ายโอนให้เหลือน้อยที่สุด) ในระหว่างการซิงโครไนซ์ครั้งแรก แอปพลิเคชัน 1C จะอัปโหลดเอนทิตีธุรกิจทั้งหมด (เช่น รายการของสมุดอ้างอิงรายการ) ในรูปแบบ EnterpriseData ลงในไฟล์ XML (เนื่องจากทั้งหมดเป็น "ใหม่" สำหรับแอปพลิเคชันภายนอก) แอปพลิเคชันบุคคลที่สามจะต้องประมวลผลข้อมูลจากไฟล์ XML ที่ได้รับจาก 1C และในเซสชันการซิงโครไนซ์ครั้งถัดไป ให้วางในไฟล์ที่ส่งไปยัง 1C ในส่วน XML พิเศษ ข้อมูลที่ข้อความจาก 1C ที่มีหมายเลขที่แน่นอนประสบความสำเร็จ ได้รับ. ข้อความรับเป็นสัญญาณไปยังแอปพลิเคชัน 1C ว่าองค์กรธุรกิจทั้งหมดได้รับการประมวลผลโดยแอปพลิเคชันภายนอกสำเร็จแล้ว และไม่จำเป็นต้องส่งข้อมูลเกี่ยวกับพวกเขาอีกต่อไป นอกจากใบเสร็จรับเงินแล้ว ไฟล์ XML จากแอปพลิเคชันบุคคลที่สามยังสามารถมีข้อมูลสำหรับการซิงโครไนซ์โดยแอปพลิเคชัน (เช่น เอกสารการขายสินค้าและบริการ)

หลังจากได้รับข้อความตอบรับ แอปพลิเคชัน 1C จะทำเครื่องหมายการเปลี่ยนแปลงทั้งหมดที่ส่งในข้อความก่อนหน้าว่าซิงโครไนซ์สำเร็จแล้ว เฉพาะการเปลี่ยนแปลงที่ไม่ซิงโครไนซ์กับเอนทิตีธุรกิจ (การสร้างเอนทิตีใหม่ การเปลี่ยนแปลงและการลบรายการที่มีอยู่) จะถูกส่งไปยังแอปพลิเคชันภายนอกในระหว่างเซสชันการซิงโครไนซ์ครั้งถัดไป

วิธีการรวมเข้ากับ 1C
เมื่อถ่ายโอนข้อมูลจากแอปพลิเคชันภายนอกไปยังแอปพลิเคชัน 1C รูปภาพจะกลับด้าน แอปพลิเคชันภายนอกจะต้องกรอกส่วนการรับของไฟล์ XML ตามนั้น และวางข้อมูลธุรกิจสำหรับการซิงโครไนซ์ในส่วนในรูปแบบ EnterpriseData

วิธีการรวมเข้ากับ 1C

การแลกเปลี่ยนข้อมูลที่เรียบง่ายโดยไม่ต้องจับมือกัน

สำหรับกรณีของการบูรณาการอย่างง่าย เมื่อการถ่ายโอนข้อมูลจากแอปพลิเคชันบุคคลที่สามไปยังแอปพลิเคชัน 1C เท่านั้นก็เพียงพอแล้ว และไม่จำเป็นต้องถ่ายโอนข้อมูลจากแอปพลิเคชัน 1C ไปยังแอปพลิเคชันบุคคลที่สามแบบย้อนกลับ (เช่น การรวมระบบออนไลน์ ร้านค้าที่ถ่ายโอนข้อมูลการขายไปยัง 1C: การบัญชี) มีตัวเลือกที่ง่ายขึ้นในการทำงานผ่านบริการเว็บ (โดยไม่ต้องตอบรับ) ซึ่งไม่ต้องการการตั้งค่าที่ด้านข้างของแอปพลิเคชัน 1C

โซลูชันการรวมแบบกำหนดเอง

มีโซลูชันมาตรฐาน "1C: การแปลงข้อมูล" ซึ่งใช้กลไกแพลตฟอร์มสำหรับการแปลงและการแลกเปลี่ยนข้อมูลระหว่างการกำหนดค่า 1C มาตรฐาน แต่ยังสามารถใช้เพื่อรวมกับแอปพลิเคชันบุคคลที่สามได้

บูรณาการกับโซลูชั่นการธนาคาร

มาตรฐาน “ธนาคารลูกค้า”พัฒนาโดยผู้เชี่ยวชาญ 1C เมื่อกว่า 10 ปีที่แล้วได้กลายเป็นมาตรฐานอุตสาหกรรมในรัสเซียแล้ว ก้าวต่อไปในทิศทางนี้คือเทคโนโลยี ไดเร็กแบงก์ซึ่งช่วยให้คุณส่งเอกสารการชำระเงินไปที่ธนาคารและรับใบแจ้งยอดจากธนาคารได้โดยตรงจากโปรแกรมของระบบ 1C:Enterprise โดยการกดปุ่มเดียวในโปรแกรม 1C ไม่จำเป็นต้องติดตั้งและรันโปรแกรมเพิ่มเติมบนคอมพิวเตอร์ไคลเอนต์

นอกจากนี้ยังมี มาตรฐานการแลกเปลี่ยนข้อมูลในโครงการเงินเดือน.

อื่น ๆ

มูลค่าการกล่าวขวัญ แลกเปลี่ยนโปรโตคอลระหว่างระบบ 1C:Enterprise และเว็บไซต์มาตรฐานการแลกเปลี่ยนข้อมูลทางการค้า พาณิชย์ML (พัฒนาร่วมกับ Microsoft, Intel, Price.ru และบริษัทอื่นๆ) มาตรฐานการแลกเปลี่ยนข้อมูลการรับธุรกรรม.

ที่มา: will.com

เพิ่มความคิดเห็น