รูปแบบการแลกเปลี่ยนสากล 1c “1C” นำเสนอรูปแบบ EnterpriseData สำหรับการแลกเปลี่ยนข้อมูลทางธุรกิจ การกำหนดค่าล่วงหน้าที่ฝั่ง 1C

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

มีสาเหตุหลายประการที่ทำให้การซิงโครไนซ์ได้รับความนิยม:

  • ไม่จำเป็นต้องรันกระบวนการโหลดและขนข้อมูลแยกกัน
  • การดำเนินการแลกเปลี่ยนข้อมูลอัตโนมัติไม่รบกวนการแลกเปลี่ยนด้วยตนเอง
  • กำหนดค่าได้ง่าย (สำหรับการกำหนดค่ามาตรฐาน คุณไม่จำเป็นต้องสร้างกฎการแลกเปลี่ยนด้วยซ้ำ
  • การสร้างการซิงโครไนซ์เพียงครั้งเดียวและประกาศกำหนดการสำหรับการดำเนินการก็เพียงพอแล้ว

เงื่อนไขของงานของเรา

ที่อินพุตเรามีการกำหนดค่าฐานข้อมูลมาตรฐานสองแบบ:

  1. การบริหารเงินเดือนและบุคลากร (เวอร์ชัน 3.1.3)
  2. การบัญชีสำหรับวิสาหกิจทางการเกษตร (เวอร์ชัน 3.0.52)

ฐานข้อมูลทั้งสองทำงานในโหมดไฟล์ การซิงโครไนซ์สามารถกำหนดค่าได้จากฐานข้อมูลใดก็ได้

หากจะกำหนดค่าการซิงโครไนซ์จาก "การบัญชี" ถึง "ZUP" จะต้องเปิดใช้งานช่องทำเครื่องหมาย "การซิงโครไนซ์" และในทางกลับกัน

การตั้งค่าอยู่ที่ไหน

ใน "การบัญชี" ไปที่ระบบย่อย "การบริหาร" ในเมนู "การตั้งค่า" และค้นหารายการ "การซิงโครไนซ์ข้อมูล" (รูปที่ 1)

หน้าต่างการตั้งค่าการซิงโครไนซ์จะเปิดขึ้น (รูปที่ 2)

ข้าว. 2

ที่นี่เราสามารถ:

  1. เปิดหรือปิดการซิงโครไนซ์;
  2. ห้ามการโหลดข้อมูลที่ไม่เกี่ยวข้อง
  3. ตั้งค่าคำนำหน้าเพื่อระบุข้อมูลที่ถ่ายโอน
  4. ไปที่การตั้งค่าการซิงโครไนซ์อื่น ๆ

ด้วยการเริ่มการซิงโครไนซ์โดยทำเครื่องหมายในช่องที่เหมาะสมและกำหนดคำนำหน้า เราสามารถปิดแผนกบัญชีได้ งานต่อไปจะดำเนินการใน "เงินเดือน"

หน้าต่างการตั้งค่าการซิงโครไนซ์ข้อมูลจะแสดงในรูปที่ 1 3

ข้าว. 3

เรามาดูกันดีกว่า

หน้าต่างการตั้งค่าการซิงโครไนซ์

มาเริ่มกันตามลำดับ:


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

ข้าว. 6

การตั้งค่าการซิงโครไนซ์

มีสองคำสั่งในแท็บ "การตั้งค่าการซิงโครไนซ์ข้อมูล":

  • ปรับแต่ง;
  • ดาวน์โหลดกฎ

การรันคำสั่ง "Load Rules" จะเปิดแบบฟอร์ม (รูปที่ 7)

ข้าว. 7

ที่นี่เราสามารถเลือกได้ว่าเราจะใช้กฎการแลกเปลี่ยนมาตรฐานที่ให้มาในการกำหนดค่า หรือเราจะซิงโครไนซ์ตามกฎของเราเองที่เก็บไว้ในไฟล์เก็บถาวร

การตั้งค่าที่เหลือทำได้โดยคลิกที่ปุ่ม "กำหนดค่า" (รูปที่ 8)

ข้าว. 8

ในหน้าต่างแรกที่เปิดขึ้น คุณสามารถ:

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

คำสั่ง “โหลดชุดกฎ” คล้ายกับคำสั่งเดียวกันในหน้าต่างการตั้งค่าก่อนหน้า

ควรพิจารณาพารามิเตอร์การเชื่อมต่อให้ละเอียดยิ่งขึ้น (รูปที่ 9)

ข้าว. 9

ในกรณีของเรา ฐานปลายทางและฐานต้นทางอยู่บนคอมพิวเตอร์เครื่องเดียวกันและทำงานในโหมดไฟล์ ดังนั้นการซิงโครไนซ์ระหว่างกันจึงเกิดขึ้นผ่านการเชื่อมต่อโดยตรง

เราต้อง:

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

หากการแลกเปลี่ยนเกิดขึ้นผ่านการเชื่อมต่อประเภทอื่น คุณจะต้องกำหนดค่าพารามิเตอร์บนแท็บที่เกี่ยวข้อง

การตั้งค่ากำหนดการ

และในตอนท้ายมีคำไม่กี่คำเกี่ยวกับการตั้งค่ากำหนดการซิงโครไนซ์โดยดำเนินการในแท็บที่เกี่ยวข้องของหน้าต่าง (รูปที่ 3) และไม่แตกต่างจากแบบฟอร์มที่เกี่ยวข้องในการตั้งค่ากำหนดการสำหรับงานประจำอื่น ๆ

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

บริษัทได้ฝึกฝนการสร้างและการใช้มาตรฐานแบบเปิดสำหรับการโต้ตอบข้อมูลของแอปพลิเคชันกับซอฟต์แวร์จากนักพัฒนาอิสระมาเป็นเวลานาน แต่จนถึงขณะนี้สิ่งนี้เกี่ยวข้องกับสาขาวิชาเฉพาะบางสาขาเท่านั้น นี่คือสิ่งที่รูปแบบ CommerceML ซึ่งสร้างขึ้นเมื่อเกือบสิบห้าปีที่แล้วมีไว้เพื่อแก้ไขปัญหาอีคอมเมิร์ซ เช่นเดียวกับ "ลูกค้า-ธนาคาร" และ DirectBank สำหรับการสื่อสารระหว่างแอปพลิเคชัน 1C และระบบธนาคารภายนอก ในทางกลับกัน EnterpriseData เป็นกลไกสากลที่สามารถครอบคลุมทุกด้านของกิจกรรมขององค์กร - การเงิน, การผลิต, การจัดซื้อและการขาย, การดำเนินงานคลังสินค้า ฯลฯ รูปแบบเวอร์ชันแรกประกอบด้วยคำอธิบายของเอกสาร 94 ประเภทจากหลากหลาย พื้นที่ของธุรกิจ 1C วางแผนที่จะเพิ่มเอกสารใหม่เข้าไปและให้รายละเอียดเอกสารที่มีอยู่

ดังที่ตัวแทนของ 1C อธิบาย การเกิดขึ้นของ EnterpriseData อธิบายได้ด้วยความจำเป็นที่ไม่เพียงแต่จะต้องรวมแอปพลิเคชันของบริษัทเข้ากับซอฟต์แวร์จากนักพัฒนารายอื่นเท่านั้น แต่ยังรวมถึง - บางทีในเบื้องต้นด้วยซ้ำ - เพื่อสร้างกลไกที่เป็นหนึ่งเดียวสำหรับการสื่อสารข้อมูลภายในตระกูลซอฟต์แวร์ 1C: Enterprise จนกระทั่งเมื่อไม่นานมานี้ มีการใช้วิธีแก้ไขปัญหามากมายเพื่อแก้ไขปัญหาเหล่านี้ ซึ่งมักสร้างขึ้นเป็นรายกรณีไป การเปลี่ยนผลิตภัณฑ์ 1C เป็น EnterpriseData ได้เริ่มขึ้นแล้ว โดยใช้ในแอปพลิเคชันหลักเวอร์ชันล่าสุดทั้งหมด (“1C: ERP Enterprise Management 2.0”, “1C: การบัญชี 8” 3.0, “1C: การบัญชี 8 KORP” 3.0, “1C: การค้าปลีก” "2.0, "1C: การจัดการการค้า" 11) ในขณะเดียวกันก็ไม่คาดว่าจะแทนที่มาตรฐานที่ใช้แล้ว (CommerceML ที่ทำงานร่วมกับธนาคาร) ด้วย EnterpriseData เนื่องจากอัลกอริธึมพิเศษที่ผ่านการทดสอบตามเวลาทำงานได้อย่างมีประสิทธิภาพมากกว่าเครื่องมือสากล

1C เชื่อว่ารูปแบบใหม่จะพบการใช้งานอย่างกว้างขวางในหมู่นักพัฒนาอิสระที่สร้างแอปพลิเคชันบนแพลตฟอร์ม 1C: Enterprise มีการเสนอส่วนประกอบซอฟต์แวร์สำเร็จรูปให้โดยเป็นส่วนหนึ่งของ Library of Standard Subsystems (บางอย่างเช่น SDK สำหรับ 1C: Enterprise)

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

1C สัญญาว่าจะพัฒนารูปแบบ EnterpriseData เพิ่มเติมและรองรับแอปพลิเคชันจำนวนเพิ่มมากขึ้น มาตรฐานนี้จะได้รับการจัดการโดยบริษัทเอง ผู้สร้างยังไม่มีแผนที่จะเปลี่ยนให้เป็นมาตรฐานอุตสาหกรรมที่เป็นอิสระ

ในบทความนี้ ฉันจะอธิบายประสบการณ์เล็กๆ น้อยๆ ของฉันในการจัดการแลกเปลี่ยนข้อมูลผ่านรูปแบบ Universal EnterpriseData

ในกรณีของฉัน การแลกเปลี่ยนได้รับการกำหนดค่าระหว่างการกำหนดค่า "Trade Management 11.2" (ต่อไปนี้จะเรียกว่า UT) และ "Enterprise Accounting 3.0.43" (ต่อไปนี้จะเรียกว่า BP) การแลกเปลี่ยนเป็นแบบทางเดียวจาก UT ไปยัง BP ก่อนที่จะอัปเกรด Trade Management 11.1 เป็น 11.2 การแลกเปลี่ยนข้อมูลได้รับการกำหนดค่าโดยใช้การกำหนดค่า Data Conversion 2.0 อย่างไรก็ตาม หลังจากเปลี่ยนเป็น “11.2” แล้ว มีข้อผิดพลาดปรากฏขึ้นใน “การจัดการการค้า” สำหรับผู้ใช้ ขั้นตอนการอัปเดตกฎการแลกเปลี่ยนได้ดำเนินการไปแล้ว แต่ก็ไม่ได้ผลลัพธ์ใดๆ ดีบักเกอร์แสดงว่าปัญหาอยู่ในการแลกเปลี่ยนข้อมูล มีการตัดสินใจที่จะลบการตั้งค่าการแลกเปลี่ยนข้อมูลในการกำหนดค่าทั้งสองและกำหนดค่าใหม่อีกครั้ง

ทั้ง “การจัดการการค้า” และ “การบัญชีองค์กร” ทำงานในเวอร์ชันไคลเอ็นต์-เซิร์ฟเวอร์ ฉันเริ่มตั้งค่าการซิงโครไนซ์กับ UT ฉันดำเนินการในลักษณะที่ข้อมูลถูกอัปโหลดจาก UT ไปยังไฟล์ นั่นคือการซิงโครไนซ์ผ่านไดเร็กทอรีเครือข่าย ใน BP ฉันกำหนดค่าการแลกเปลี่ยนในลักษณะที่ไม่มีการดาวน์โหลดข้อมูลจาก BP

ข้อผิดพลาดเมื่อเรียกวิธีการบริบท (ตรวจสอบ): ข้อผิดพลาดในการตรวจสอบข้อมูล XDTO:
โครงสร้างของวัตถุ "/บัญชีธนาคารคู่สัญญา/ธนาคาร" ไม่สอดคล้องกับประเภท: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)KeyPropertiesBank
การตรวจสอบคุณสมบัติ "BIK":
รูปร่าง: องค์ประกอบ
ชื่อ: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)BIK
พิมพ์:
ทรัพย์สินที่จำเป็นขาดหายไป
วัตถุประสงค์: ข้อตกลงกับคู่สัญญาหมายเลข ...

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

ฉันลองซิงโครไนซ์ข้อมูลจาก UT อีกครั้ง ครั้งนี้อัปโหลดข้อมูลสำเร็จแล้ว ไฟล์ XML ถูกสร้างขึ้นในโฟลเดอร์เครือข่ายที่มีข้อมูลที่จะถ่ายโอนจาก UT ไปยัง BP

ขั้นตอนต่อไปคือการโหลดข้อมูลจากไฟล์ไปยังแผนกบัญชีองค์กร ในการกำหนดค่า "การบัญชีองค์กร" ฉันคลิกปุ่ม "ซิงโครไนซ์" ซึ่งเป็นแบบฟอร์มการประมวลผลที่เปิดขึ้นพร้อมข้อความ "การวิเคราะห์ข้อมูลอยู่ระหว่างดำเนินการ" หลังจากนั้นไม่นานข้อความก็เปลี่ยนเป็น “กำลังอัปโหลดข้อมูล” ในเวลาเดียวกันตัวบ่งชี้และตัวนับแสดงให้เห็นว่ามีการขนถ่ายวัตถุมากกว่า 80,000 รายการออกจากหน่วยจ่ายไฟ สิ่งนี้ทำให้ฉันสับสนเพราะฉันระบุไว้ในการตั้งค่าว่าไม่ควรถอดสิ่งใดออกจากแหล่งจ่ายไฟ การประมวลผลใช้เวลานานและจบลงด้วยข้อผิดพลาด:

เหตุการณ์: การแลกเปลี่ยนข้อมูล
(GeneralModule.Long-runningOperations.Module(371)): กระบวนการของผู้ปฏิบัติงานในเบื้องหลังสิ้นสุดลงอย่างผิดปกติ
RaiseException(ข้อความผิดพลาด);

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

ด้วยการทดสอบการซิงโครไนซ์เพิ่มเติม จำเป็นต้องทำการเปลี่ยนแปลงกฎสำหรับการแปลงออบเจ็กต์ ถึงเวลาใช้การกำหนดค่า Data Conversion 3.0 วิธีใช้การกำหนดค่าในตัวจะอธิบายวิธีการทำงาน บทความบนเว็บไซต์ ITS ก็ช่วยได้เช่นกัน

ด้วยเหตุนี้ ฉันจึงโหลดข้อมูลต่อไปนี้ลงใน "Data Conversion 3.0":

  • ข้อความของโมดูลทั่วไป "Data Exchange Manager ผ่าน Universal Format" จากสองฐานข้อมูล
  • เค้าโครงของฐานทั้งสอง
  • คำอธิบายของรูปแบบ EnterpriseData (จากฐานข้อมูลใดฐานข้อมูลหนึ่ง)
  • กฎการแปลง

หลังจากดาวน์โหลด ฉันเปิดกฎสำหรับการแปลงข้อมูล ออบเจ็กต์ และคุณสมบัติใน “Data Conversion 3.0” ทำการเปลี่ยนแปลงที่ฉันต้องการ จากนั้นฉันใช้ปุ่ม "ยกเลิกการโหลดโมดูลตัวจัดการการแลกเปลี่ยน" ข้อความโมดูลถูกคัดลอกไปยังคลิปบอร์ดแล้ว สิ่งที่เหลืออยู่คือการใส่เข้าไปในการกำหนดค่า

หลังจากทดลองตั้งกฎใน "Data Conversion 3.0" แล้วฉันก็สรุปด้วยตัวเองว่าในกรณีที่การเปลี่ยนแปลงที่เกิดขึ้นไม่มีนัยสำคัญ จะง่ายกว่าที่จะตั้งกฎโดยตรงในการกำหนดค่า UT และ BP ในโมดูลทั่วไป "ตัวจัดการการแลกเปลี่ยนข้อมูลผ่านรูปแบบสากล" หากการแก้ไขมีความร้ายแรง เช่น การเพิ่มออบเจ็กต์ใหม่ลงใน Exchange คุณควรใช้การกำหนดค่า " การแปลงข้อมูล 3.0"

ฉันดำเนินการเพิ่มเอกสาร "สั่งซื้อไปยังซัพพลายเออร์" ให้กับแผนการแลกเปลี่ยนโดยใช้ " การแปลงข้อมูล 3.0" ในเวอร์ชันมาตรฐานของ UT - BP เอกสารนี้ไม่รวมอยู่ในแผนการแลกเปลี่ยน

โปรดจำไว้ว่ากฎสำหรับการลงทะเบียนออบเจ็กต์สำหรับการอัปโหลดยังคงได้รับการกำหนดค่าในการกำหนดค่า "Data Conversion 2.0"

นี่เป็นครั้งแรกของการซิงโครไนซ์ข้อมูลผ่านรูปแบบ Universal EnterpriseData

ป.ล. หากคุณมีคำถามหรือข้อสังเกตของคุณเองเกี่ยวกับการแลกเปลี่ยนข้อมูลผ่านรูปแบบสากลและการกำหนดค่า" การแปลงข้อมูล 3.0" เขียนในความคิดเห็น เราจะแลกเปลี่ยนประสบการณ์

  • การซิงโครไนซ์ข้อมูล
  • รูปแบบข้อมูลองค์กรสากล
  • การแปลงข้อมูล 3.0
  • การแปลงข้อมูล 2.0
  • การจัดการการค้า
  • การบัญชีองค์กร

พิมพ์ (Ctrl+P)

แลกเปลี่ยนผ่านรูปแบบสากล

ระบบย่อย “การแลกเปลี่ยนข้อมูล” ของไลบรารีของระบบย่อยมาตรฐานประกอบด้วย 4 ตัวเลือก (เทคโนโลยี) สำหรับการแลกเปลี่ยนข้อมูลระหว่างฐานข้อมูลต่างๆ:

  • ฐานข้อมูลแบบกระจาย (RIB);
  • การแลกเปลี่ยนข้อมูลในรูปแบบสากล
  • การแลกเปลี่ยนข้อมูลตามกฎการแลกเปลี่ยน (กฎการแลกเปลี่ยนถูกสร้างขึ้นโดยใช้การกำหนดค่า "การแปลงข้อมูล" รุ่น 2.1)
  • การแลกเปลี่ยนข้อมูลโดยไม่มีกฎการแลกเปลี่ยน

บทความนี้จะกล่าวถึงเทคโนโลยีการแลกเปลี่ยนข้อมูลผ่าน รูปแบบ EnterpriseData สากล. เทคโนโลยีนี้มีอยู่ใน “ไลบรารีระบบย่อยมาตรฐาน” โดยเริ่มตั้งแต่เวอร์ชัน 2.3.1.62 เปิดตัวในต้นปี 2559 ปัจจุบัน BSP 2.3 รุ่นล่าสุด (สำหรับใช้กับแพลตฟอร์ม 1C:Enterprise 8.3 ไม่ต่ำกว่าเวอร์ชัน 8.3.8.1652 โดยปิดใช้งานโหมดความเข้ากันได้) ได้ออกรุ่น 2.3.6.17 แล้ว

ข้าว. 1 รุ่นล่าสุดของ BSP 2.3

ในบรรดาไฟล์สำหรับจัดหาโซลูชันแอปพลิเคชัน 1C มีไฟล์ข้อความ "เวอร์ชันไลบรารี" ซึ่งเขียนตามเวอร์ชันของ BSP ที่แอปพลิเคชันได้รับการพัฒนา เช่น ตามโซลูชันแอปพลิเคชัน UT 11.3.3.231 BSP 2.3.5.65 ถูกสร้างขึ้น

โปรดทราบว่าสำหรับใช้กับแพลตฟอร์ม “1C:Enterprise 8.3” เวอร์ชันไม่ต่ำกว่า 8.3.10.2168 ฉบับเผยแพร่โดยปิดใช้งานโหมดความเข้ากันได้ บีเอสพี 2.4.

คำอธิบายของรูปแบบ EnterpriseData

รูปแบบ EnterpriseData คืออะไร

นี่คือรูปแบบที่ช่วยให้คุณสามารถอธิบายออบเจ็กต์ฐานข้อมูล (คู่สัญญา ใบแจ้งหนี้ ฯลฯ) หรือรายงานข้อเท็จจริงที่ว่าออบเจ็กต์นี้ถูกลบไปแล้ว คาดว่าการกำหนดค่าที่ได้รับไฟล์ในรูปแบบ EnterpriseData จะตอบสนองตามนั้น โดยจะสร้างออบเจ็กต์ใหม่และลบออบเจ็กต์ที่ถูกทำเครื่องหมายว่าลบในไฟล์ มีไว้สำหรับการแลกเปลี่ยนข้อมูลระหว่างการกำหนดค่า UT, RT, UNF, BP รูปแบบนี้ยังสามารถใช้เพื่อแลกเปลี่ยนข้อมูลกับระบบข้อมูลอื่น ๆ ได้ โดยไม่ได้ขึ้นอยู่กับคุณสมบัติของซอฟต์แวร์ของตัวเองหรือโครงสร้างฐานข้อมูลที่เข้าร่วมในการแลกเปลี่ยน และไม่มีข้อจำกัดในการใช้งานที่ชัดเจน

เวอร์ชันรูปแบบ EnterpriseData

ข้อมูลรูปแบบจะถูกเก็บไว้ในแพ็คเกจ XDTO ในสาขาการกำหนดค่าฐานข้อมูลทั่วไป ดังแสดงในรูป 2

รูปที่ 2 XDTO – แพคเกจรูปแบบข้อมูล EnterpriseData

ในรูป 2 แสดงว่ามีหลายแพ็คเกจ XDTO เหล่านี้เป็นเวอร์ชันที่แตกต่างกันของรูปแบบ หมายเลขเวอร์ชันของรูปแบบประกอบด้วย X.Y.Z โดยที่ X.Y คือเวอร์ชัน Z คือเวอร์ชันรอง เวอร์ชันรองจะเพิ่มขึ้นในกรณีที่มีการแก้ไขข้อบกพร่องและการเปลี่ยนแปลงอื่นๆ ซึ่ง: ฟังก์ชันการทำงานของตรรกะการแปลงข้อมูลตามเวอร์ชันก่อนหน้าของรูปแบบยังคงอยู่ (รักษาความเข้ากันได้แบบย้อนหลังของอัลกอริธึมการถ่ายโอนข้อมูลปัจจุบันผ่านรูปแบบ) การสนับสนุนความสามารถในการจัดรูปแบบใหม่สำหรับตรรกะการแปลงเป็นไปตามความสมัครใจ ตัวอย่างของการเปลี่ยนแปลงดังกล่าวอาจเป็นการแก้ไขข้อผิดพลาด การเปลี่ยนแปลงคุณสมบัติของวัตถุรูปแบบ การเพิ่มคุณสมบัติที่ไม่บังคับเมื่อแปลงข้อมูล ในกรณีอื่นๆ เมื่อรูปแบบเปลี่ยนแปลง เวอร์ชันหลักจะเพิ่มขึ้น: X – ในกรณีของการปรับโครงสร้างใหม่ทั้งหมด Y – ในกรณีอื่น ๆ
รูปแบบนี้อธิบายการแสดงวัตถุ (เอกสารหรือองค์ประกอบไดเรกทอรี) ในรูปแบบของไฟล์ XML เวอร์ชัน 1.0.1 มีคำอธิบายของออบเจ็กต์ 94 รายการจากพื้นที่ต่างๆ (การเงิน การผลิต การจัดซื้อและการขาย การดำเนินงานคลังสินค้า) ตามกฎแล้วจะเข้าใจชื่อของประเภทต่างๆ ได้ดีและไม่ต้องการคำอธิบายเพิ่มเติม เช่น “เอกสาร การดำเนินการของงานที่เสร็จสมบูรณ์” หรือ “ไดเรกทอรี คู่สัญญา” ดังที่คุณเห็น คำอธิบายประเภทเอกสารเริ่มต้นด้วยคำนำหน้า “Documentary” และองค์ประกอบไดเรกทอรีจะเริ่มต้นด้วยคำนำหน้า “Directory” สามารถดูคำอธิบายโดยละเอียดเพิ่มเติมเกี่ยวกับรูปแบบได้
เวอร์ชันล่าสุดคือ 1.3 แต่เวอร์ชันที่ใช้บ่อยที่สุดคือ 1.0 ไม่มีความแตกต่างระหว่างเวอร์ชันมากนัก รูปแบบ EnterpriseDataExchange_1_0_1_1 ใช้เมื่อทำการแลกเปลี่ยนผ่านบริการบนเว็บ
โปรดทราบว่าที่ใช้แพ็คเกจรูปแบบข้อมูล EnterpriseData ร่วมกัน แลกเปลี่ยนข้อความเมื่อสร้างกฎการแปลง เป็นแพ็คเกจนี้ที่มีวัตถุประเภท ข้อมูลเพิ่มเติมซึ่งสามารถมีประเภทค่าใดก็ได้ และใช้เมื่อสร้างกฎการแปลงระหว่างออบเจ็กต์การกำหนดค่า ที่ไม่อยู่ในรูปแบบข้อมูล ถูกต้องแล้ว ขอบคุณ ข้อมูลเพิ่มเติมคุณสามารถปรับเปลี่ยนและปรับแต่งกฎการแลกเปลี่ยนได้โดยไม่ต้องเปลี่ยนข้อมูลรูปแบบในแพ็คเกจ XDTO


ข้าว. 3 โครงสร้างของแพ็คเกจ XDTOExchangeMessage

จะแลกเปลี่ยนข้อมูลในรูปแบบ EnterpriseData ได้อย่างไร

การแลกเปลี่ยนข้อมูลในรูปแบบ EnterpriseData พร้อมการกำหนดค่าเป็นการแลกเปลี่ยนไฟล์ เพื่อตอบสนองต่อไฟล์ที่ได้รับจากแอปพลิเคชันภายนอก การกำหนดค่าจะประมวลผลและสร้างไฟล์ตอบกลับ สามารถแลกเปลี่ยนไฟล์ได้:

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

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

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

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

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

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

หลังจากประมวลผลไฟล์แล้ว การกำหนดค่าจะสร้างไฟล์ XML ที่จะมีข้อความการรับและข้อมูลใหม่สำหรับการซิงโครไนซ์จากฝั่งการกำหนดค่า (หากมีตั้งแต่เซสชันการซิงโครไนซ์ครั้งล่าสุด)

คุณสามารถดูรายละเอียดเพิ่มเติมเกี่ยวกับการแลกเปลี่ยนข้อมูลด้วยโซลูชันแอปพลิเคชันบนแพลตฟอร์ม 1C:Enterprise ในรูปแบบ EnterpriseData

โมดูลทั่วไปของ “ตัวจัดการการแลกเปลี่ยนผ่านรูปแบบสากล”

ขั้นตอนและฟังก์ชันที่อธิบายกฎการดาวน์โหลดข้อมูลจากฐานข้อมูลในรูปแบบการแลกเปลี่ยนอย่างสมบูรณ์และกฎสำหรับการโหลดข้อมูลจากรูปแบบการแลกเปลี่ยนลงในฐานข้อมูลได้รับการพัฒนาในโมดูลทั่วไป - โมดูลตัวจัดการการแลกเปลี่ยนผ่านรูปแบบสากล


ข้าว. 4 โครงสร้างของโมดูลตัวจัดการการแลกเปลี่ยนผ่านรูปแบบสากล

โมดูลจะถูกสร้างขึ้นโดยอัตโนมัติโดยใช้การกำหนดค่า "การแปลงข้อมูล" รุ่น 3.0 ตามกฎการแลกเปลี่ยนที่กำหนดค่าไว้ หรือด้วยตนเองในตัวกำหนดค่า

โมดูลประกอบด้วยส่วนขนาดใหญ่หลายส่วน ซึ่งแต่ละส่วนประกอบด้วยกลุ่มขั้นตอนและฟังก์ชันของตัวเอง

  1. ความคิดเห็น. บรรทัดแรกของโมดูลประกอบด้วยความคิดเห็นพร้อมชื่อของการแปลง บรรทัดนี้จำเป็นในการระบุโมดูลเมื่อใช้คำสั่งในโปรแกรม Data Conversion รุ่น 3.0 เป็นต้น // การแปลง UP2.2.3 จาก 06/01/2017 19:51:50 น.
  2. ขั้นตอนการแปลง. ประกอบด้วยขั้นตอนที่กำหนดไว้ล่วงหน้าซึ่งดำเนินการในขั้นตอนต่างๆ ของการซิงโครไนซ์ข้อมูล: ก่อนการแปลง หลังการแปลง ก่อนการเติมแบบเลื่อนออกไป
  3. กฎการประมวลผลข้อมูล (DPR). ประกอบด้วยขั้นตอนและฟังก์ชันที่อธิบายกฎสำหรับการประมวลผลข้อมูล
  4. กฎการแปลงวัตถุ (OCR). ประกอบด้วยขั้นตอนและฟังก์ชันที่อธิบายกฎสำหรับการแปลงออบเจ็กต์ ตลอดจนกฎสำหรับการแปลงคุณสมบัติของออบเจ็กต์เหล่านี้
  5. กฎการแปลงข้อมูลที่กำหนดไว้ล่วงหน้า (PDC)มีขั้นตอนที่กรอกกฎสำหรับการแปลงข้อมูลที่กำหนดไว้ล่วงหน้า
  6. อัลกอริทึม. มีอัลกอริธึมที่กำหนดเองซึ่งถูกเรียกจากกฎอื่น (POD หรือ PKO)
  7. ตัวเลือก.ประกอบด้วยตรรกะสำหรับการกรอกพารามิเตอร์การแปลง
  8. จุดประสงค์ทั่วไป. ประกอบด้วยขั้นตอนและฟังก์ชันที่ใช้กันอย่างแพร่หลายในกฎและอัลกอริทึม

พารามิเตอร์ของขั้นตอนและฟังก์ชันที่ใช้ในขั้นตอนหลายประเภทในโมดูลผู้จัดการมีดังต่อไปนี้

แลกเปลี่ยนส่วนประกอบ ประเภท - โครงสร้าง. ประกอบด้วยพารามิเตอร์และกฎการแลกเปลี่ยนที่เริ่มต้นโดยเป็นส่วนหนึ่งของเซสชันการแลกเปลี่ยน

ทิศทางการแลกเปลี่ยน ประเภท – สตริง. ไม่ว่าจะ "ส่ง" หรือ "รับ"

ข้อมูลไอบี ประเภท – DirectoryObjectหรือ DocumentObject.

ขั้นตอนที่เกี่ยวข้องกับเหตุการณ์ Conversion

มีขั้นตอนที่กำหนดไว้ล่วงหน้าสามขั้นตอนที่ถูกเรียกระหว่างกระบวนการแปลง:

  • ก่อนการแปลง. ถูกเรียกก่อนการซิงโครไนซ์ข้อมูลจะเกิดขึ้น โดยทั่วไปขั้นตอนนี้จะเป็นที่เก็บตรรกะสำหรับการเริ่มต้นพารามิเตอร์การแปลงต่างๆ การเติมค่าเริ่มต้น ฯลฯ พารามิเตอร์: การแลกเปลี่ยนส่วนประกอบ.
  • หลังการแปลง. เรียกหลังจากการซิงโครไนซ์ข้อมูลเสร็จสิ้น แต่ก่อนที่จะเกิดการแพ็ดแบบ Lazy ตัวเลือก: การแลกเปลี่ยนส่วนประกอบ.
  • ก่อนล่าช้าการกรอก. เรียกว่าก่อนที่จะเกิดการเติมแบบขี้เกียจ ตรรกะสำหรับการเรียงลำดับหรือการปรับตารางของวัตถุที่มีการเติมแบบ Lazy สามารถพบได้ที่นี่ ตัวเลือก: การแลกเปลี่ยนส่วนประกอบ.

ขั้นตอน AML

กรอกกฎการประมวลผลข้อมูล ขั้นตอนการส่งออกที่มีตรรกะสำหรับการกรอกกฎการประมวลผลข้อมูล ประกอบด้วยการเรียกขั้นตอนอื่นๆ ที่เพิ่มกฎสำหรับการประมวลผลออบเจ็กต์เฉพาะลงในตารางกฎ (ดูขั้นตอนด้านล่าง เพิ่ม AML). ตัวเลือก: ทิศทางการแลกเปลี่ยน, กฎการประมวลผลข้อมูล

เพิ่ม UNDER_<ИмяПОД>. ชุดของขั้นตอนที่เติมตารางภายใต้กฎสำหรับวัตถุเฉพาะ จำนวนขั้นตอนดังกล่าวสอดคล้องกับจำนวน AML ที่ให้ไว้สำหรับการแปลงนี้ในโปรแกรม Data Conversion เวอร์ชัน 3.0 ตัวเลือก: กฎการประมวลผลข้อมูล(ตารางค่าที่เริ่มต้นโดยเป็นส่วนหนึ่งของเซสชันการแลกเปลี่ยน)

ภายใต้_<ИмяПОД>_เมื่อประมวลผล ขั้นตอนประกอบด้วยข้อความตัวจัดการ ระหว่างการประมวลผลสำหรับ AML ที่เฉพาะเจาะจง ตัวจัดการได้รับการออกแบบเพื่อใช้ตรรกะการแปลงในระดับออบเจ็กต์ ตัวอย่างเช่น กำหนด PQO เฉพาะให้กับออบเจ็กต์เฉพาะโดยขึ้นอยู่กับเนื้อหาของออบเจ็กต์ ตัวเลือก:

  • ข้อมูลขข้อมูลหรือ DataXDTO(ขึ้นอยู่กับทิศทางการแลกเปลี่ยน):
  • เมื่อส่ง – วัตถุ ( ไดเรกทอรีวัตถุ,DocumentObject);
  • เมื่อได้รับ - โครงสร้างพร้อมคำอธิบายของวัตถุ XDTO
  • การใช้พีเคโอ. พิมพ์ - โครงสร้าง. คีย์ประกอบด้วยสตริงที่มีชื่อของ PCO และค่าของประเภท บูลีน (จริง– ใช้ PKO โกหก– ไม่ใช้ PKO)
  • การแลกเปลี่ยนส่วนประกอบ.

ภายใต้_<ИмяПОД>_การสุ่มตัวอย่างข้อมูล ฟังก์ชันประกอบด้วยข้อความตัวจัดการ เมื่อทำการขนถ่าย. ตัวจัดการได้รับการออกแบบเพื่อใช้อัลกอริธึมที่กำหนดเองในการเลือกวัตถุที่จะยกเลิกการโหลด ค่าที่ส่งคืน: อาร์เรย์ของวัตถุที่จะยกเลิกการโหลด อาร์เรย์สามารถมีทั้งลิงก์ไปยังวัตถุฐานข้อมูลและโครงสร้างพร้อมข้อมูลสำหรับการอัปโหลด ตัวเลือก: การแลกเปลี่ยนส่วนประกอบ.

ขั้นตอนการทำ PKO

กรอกกฎการแปลงวัตถุ ขั้นตอนการส่งออกที่มีตรรกะสำหรับการกรอกกฎสำหรับการแปลงออบเจ็กต์ ประกอบด้วยการเรียกขั้นตอนอื่นๆ ที่เพิ่มกฎการแปลงออบเจ็กต์เฉพาะลงในตารางกฎ (ดูขั้นตอนด้านล่าง เพิ่ม PKO). ตัวเลือก: ทิศทางการแลกเปลี่ยน, กฎการแปลง(ตารางค่าที่เริ่มต้นโดยเป็นส่วนหนึ่งของเซสชันการแลกเปลี่ยน)

เพิ่มPKO_<ИмяПКО>. ชุดของขั้นตอนที่เติมตาราง PKO ด้วยกฎสำหรับอ็อบเจ็กต์เฉพาะ จำนวนขั้นตอนดังกล่าวสอดคล้องกับจำนวน PKO ที่จัดเตรียมไว้สำหรับการแปลงนี้ในโปรแกรม Data Conversion เวอร์ชัน 3.0 ตัวเลือก: กฎการแปลง(ตารางค่าที่เริ่มต้นโดยเป็นส่วนหนึ่งของเซสชันการแลกเปลี่ยน)

พีเคโอ_<ИмяПКО>_เมื่อส่งข้อมูล ขั้นตอนประกอบด้วยข้อความตัวจัดการ เมื่อส่งสำหรับ PKO เฉพาะ ตัวจัดการจะใช้เมื่ออัปโหลดข้อมูล ออกแบบมาเพื่อใช้ตรรกะในการแปลงข้อมูลที่อยู่ในออบเจ็กต์ฐานข้อมูลให้เป็นคำอธิบายของออบเจ็กต์ XDTO ตัวเลือก:

  • ข้อมูลขข้อมูล. พิมพ์ - ไดเรกทอรีวัตถุ, DocumentObject. วัตถุฐานข้อมูลที่กำลังประมวลผล
  • DataXDTO. พิมพ์ - โครงสร้าง. ออกแบบมาเพื่อเข้าถึงข้อมูลออบเจ็กต์ XDTO
  • การแลกเปลี่ยนส่วนประกอบ.
  • StackUploads. พิมพ์ - อาร์เรย์. มีลิงก์ไปยังวัตถุที่ไม่ได้โหลด โดยคำนึงถึงการซ้อนบัญชี

พีเคโอ_<ИмяПКО>_เมื่อแปลงข้อมูล XDTO ขั้นตอนประกอบด้วยข้อความตัวจัดการ เมื่อแปลง DataXDTOสำหรับ PKO เฉพาะ ตัวจัดการจะใช้เมื่อโหลดข้อมูล ออกแบบมาเพื่อใช้ตรรกะการแปลงข้อมูล XDTO ตามอำเภอใจ ตัวเลือก:

  • DataXDTO. พิมพ์ - โครงสร้าง. คุณสมบัติวัตถุ XDTO ที่ได้รับการประมวลผลล่วงหน้าเพื่อให้เข้าถึงได้ง่ายขึ้น
  • ข้อมูลที่ได้รับ. พิมพ์ - ไดเรกทอรีวัตถุ, DocumentObject. วัตถุฐานข้อมูลที่สร้างขึ้นโดยการแปลงข้อมูล XDTO ไม่ได้บันทึกไว้ในฐานข้อมูล
  • การแลกเปลี่ยนส่วนประกอบ.

พีเคโอ_<ИмяПКО>_ก่อนที่จะบันทึกข้อมูลที่ได้รับ ขั้นตอนประกอบด้วยข้อความตัวจัดการ ก่อนบันทึกข้อมูลที่ได้รับสำหรับ PKO เฉพาะ ตัวจัดการจะใช้เมื่อโหลดข้อมูล ออกแบบมาเพื่อใช้ตรรกะเพิ่มเติมที่ต้องทำก่อนที่จะบันทึกออบเจ็กต์ในฐานข้อมูล ตัวอย่างเช่น ควรโหลดการเปลี่ยนแปลงลงในข้อมูลความปลอดภัยของข้อมูลที่มีอยู่ หรือควรโหลดเป็นข้อมูลใหม่ ตัวเลือก:

  • ข้อมูลที่ได้รับ. พิมพ์ - ไดเรกทอรีวัตถุ, DocumentObject. องค์ประกอบข้อมูลที่สร้างขึ้นโดยการแปลงข้อมูล XDTO

บันทึกหากข้อมูลนี้เป็นข้อมูลใหม่สำหรับฐานข้อมูล (parameter ข้อมูลขข้อมูลมีค่า ไม่ได้กำหนด).

มิฉะนั้น ข้อมูลที่ได้รับแทนที่ ข้อมูลขข้อมูล(ทรัพย์สินทั้งหมดจาก ข้อมูลที่ได้รับโอนไปที่ ข้อมูลขข้อมูล).

หากไม่จำเป็นต้องแทนที่ข้อมูลความปลอดภัยของข้อมูลแบบมาตรฐานด้วยข้อมูลที่ได้รับ คุณควรเขียนตรรกะการถ่ายโอนของคุณเอง จากนั้นตั้งค่าพารามิเตอร์ ข้อมูลที่ได้รับความหมาย ไม่ได้กำหนด:

  • ข้อมูลขข้อมูล. พิมพ์ - ไดเรกทอรีวัตถุ, DocumentObject. องค์ประกอบข้อมูลฐานข้อมูลที่สอดคล้องกับข้อมูลที่ได้รับ หากไม่พบข้อมูลที่ตรงกัน ให้ประกอบด้วย ไม่ได้กำหนด.
  • การแปลงคุณสมบัติ. พิมพ์ - ตารางค่า. ประกอบด้วยกฎสำหรับการแปลงคุณสมบัติของอ็อบเจ็กต์ปัจจุบัน ซึ่งเตรียมใช้งานโดยเป็นส่วนหนึ่งของเซสชันการแลกเปลี่ยน
  • การแลกเปลี่ยนส่วนประกอบ.

ขั้นตอนการทำ PCPD

กรอกกฎการแปลงข้อมูลที่กำหนดไว้ล่วงหน้า. ขั้นตอนการส่งออกที่มีตรรกะสำหรับการกรอกกฎสำหรับการแปลงข้อมูลที่กำหนดไว้ล่วงหน้า ตัวเลือก: ทิศทางการแลกเปลี่ยน, กฎการแปลง(ตารางค่าที่เริ่มต้นโดยเป็นส่วนหนึ่งของเซสชันการแลกเปลี่ยน)

อัลกอริทึม

ในโปรแกรม "การแปลงข้อมูล" รุ่น 3.0 คุณสามารถสร้างอัลกอริธึมที่กำหนดเองซึ่งเรียกจากตัวจัดการ AML และ PKPD ชื่อ พารามิเตอร์ และเนื้อหาของอัลกอริธึมจะถูกกำหนดเมื่อพัฒนากฎ

ตัวเลือก

กรอกพารามิเตอร์การแปลง ขั้นตอนการส่งออกที่มีการกรอกโครงสร้างพร้อมพารามิเตอร์การแปลง ตัวเลือก: ตัวเลือกการแปลง(พิมพ์ - โครงสร้าง).

ขั้นตอนและฟังก์ชั่นวัตถุประสงค์ทั่วไป

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

ExecuteManagerModuleฟังก์ชัน ตัวเลือก: ชื่อขั้นตอน(เส้น), ตัวเลือก(โครงสร้าง). ฟังก์ชั่นวัตถุประสงค์ที่คล้ายกัน ExecuteManagerModuleProcedure. ความแตกต่างคือการเรียกใช้ฟังก์ชันและส่งกลับค่าของมัน

ลองดูตัวอย่างชีวิตจริงที่เรียบง่าย สมมติว่าเรามีบริษัทที่ดำเนินธุรกิจการค้าส่งและค้าปลีก และในบริษัทนี้ ก็เหมือนกับบริษัทอื่นๆ ที่มีการบัญชี องค์กรมีฐานข้อมูลมาตรฐานสองฐานข้อมูล ได้แก่ UT (การจัดการการค้า) และ BP (การบัญชีขององค์กร) ตามลำดับ ในแต่ละฐานข้อมูลจะมีการเก็บบันทึกของตัวเองไว้ ใน UT มีการจัดการเพื่อสะท้อนธุรกรรมทั้งหมดที่เกี่ยวข้องกับการค้าใน บีพีมีการบัญชี เพื่อไม่ให้ทำงานซ้ำซ้อนเช่น อย่าสร้างเอกสารเดียวกันในสองฐานข้อมูล (ท้ายที่สุดแล้วการเคลื่อนไหวควรอยู่ในการจัดการและการบัญชี) เราจะตั้งค่าการซิงโครไนซ์ระหว่างฐานข้อมูลเหล่านี้.

เราจะตั้งค่าการแลกเปลี่ยนข้อมูลทางเดียวจาก UT ---> BP นอกจากนี้ยังสามารถตั้งค่าการแลกเปลี่ยนแบบสองทางได้ แต่ในทางปฏิบัติมักไม่จำเป็น ดังนั้นเราจะไม่พิจารณาในตัวอย่างของเรา

ขั้นตอนการเตรียมการสำหรับการตั้งค่าการแลกเปลี่ยนใน BP

มาเริ่มการตั้งค่าการซิงโครไนซ์ก่อนอื่นไปที่ฐานข้อมูล 1C "Enterprise Accounting 3.0" (ตัวรับ) เราต้องตรวจสอบว่าเปิดใช้งานการซิงโครไนซ์สำหรับฐานข้อมูลนี้หรือไม่ ในการดำเนินการนี้เราต้องไปที่ฐานข้อมูลก่อน ทันทีที่ฐานข้อมูลเปิดขึ้น ให้ไปที่แท็บ "การดูแลระบบ" ---> "การตั้งค่าการซิงโครไนซ์ข้อมูล"

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

เราดำเนินการตั้งค่าการซิงโครไนซ์ข้อมูลใน UT ต่อไป

หลังจากที่เราดำเนินการที่จำเป็นทั้งหมดในฐานข้อมูลตัวรับ (BP 3.0) แล้ว เพื่อตั้งค่าการแลกเปลี่ยนข้อมูลต่อไป เราจำเป็นต้องเปิดฐานข้อมูลต้นทาง (UT 11.1) ไปที่แท็บ "การดูแลระบบ" เลือก "การตั้งค่าการซิงโครไนซ์ข้อมูล" ในเมนูด้านซ้าย. หากไม่ได้เปิดใช้งานการซิงโครไนซ์ ให้เปิดใช้งานโดยใช้ช่องทำเครื่องหมาย และอย่าลืมระบุคำนำหน้าฐานของแหล่งที่มา เมื่อเราทำตามขั้นตอนที่ 1-4 ทั้งหมดตามที่แสดงในภาพด้านล่างแล้ว คุณจะต้องคลิกที่ไฮเปอร์ลิงก์ “Data Synchronization” (ขั้นตอนที่ 5)

ในหน้าต่างใหม่ที่ปรากฏขึ้นคุณต้องคลิกที่เครื่องหมายบวกสีเขียว (ตั้งค่าการซิงโครไนซ์ข้อมูล) ในเมนูแบบเลื่อนลงเลือกรายการ "Enterprise Accounting 3.0"

กำหนดจุดสำคัญในการแลกเปลี่ยนข้อมูลระหว่าง UT และ BP

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

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

ในหน้าถัดไป เราต้องกรอกกฎสำหรับการส่งและรับข้อมูลจากการกำหนดค่า BP 3.0 (ตัวรับ) คลิก "เปลี่ยนกฎการอัปโหลดข้อมูล"

หน้าต่าง "กฎสำหรับการส่งข้อมูล" เปิดขึ้นต่อหน้าเราโดยเราตั้งค่าพารามิเตอร์ต่อไปนี้:

  • ข้อมูลอ้างอิงใดจะถูกส่งไป (ในตัวอย่างของเรา เราสนใจเฉพาะเอกสารและข้อมูลอ้างอิงที่ใช้ในเอกสารเหล่านั้น เราจึงเลือกรายการที่เหมาะสม หากคุณเลือกรายการแรก “ส่งทั้งหมด” หนังสืออ้างอิงทั้งหมดจะถูกโหลดซ้ำ ควบคู่ไปกับเอกสารต่างๆ บ่อยครั้ง หากไม่ได้ใช้ข้อมูลในเอกสารก็ไม่เกิดประโยชน์กับผู้รับเพราะไม่กระทบต่อการบัญชีแต่อย่างใด)
  • ข้อมูลทั้งหมดควรส่งตั้งแต่วันใด (เราจะไม่พิจารณาการซิงโครไนซ์ด้วยตนเองในบทความนี้)
  • องค์กรใดหรือองค์กรใดที่จะส่งข้อมูล (ในตัวอย่างของเรา เราเลือกองค์กรหนึ่ง IP "ผู้ประกอบการ")
  • กฎเกณฑ์ในการจัดทำสัญญา
  • คลังสินค้าทั่วไป
  • ควรม้วนเอกสารตามคลังสินค้าหรือไม่?

หลังจากที่เราทำการตั้งค่าแล้ว คลิก "บันทึกและปิด"

เนื่องจากในตัวอย่างของเรา เราตั้งค่าและใช้การแลกเปลี่ยนทางเดียว จาก UT ถึง BPจากนั้นการตั้งค่ากฎในการรับข้อมูลจาก "Enterprise Accounting 3.0" จึงไม่เป็นที่สนใจของเราดังนั้นเราจึงคลิก "ถัดไป"

ในหน้าต่างใหม่ เราจะถูกขอให้กำหนดค่ากฎสำหรับฐานตัวรับ (RB) ในจุดที่ 1 เราตั้งชื่อฐานข้อมูลของเรา และใส่คำนำหน้า คำนำหน้าจะต้องเหมือนกับที่เราตั้งไว้ในฐานข้อมูล BP ในตอนต้นของบทความนี้ หากคำนำหน้าแตกต่างกัน การซิงโครไนซ์ข้อมูลในโปรแกรม 1C จะไม่ทำงานหลังจากนั้นให้คลิกจุดที่ 2 และจุดที่ 3

ในจุดที่ 3 เราต้องอนุญาตให้ประมวลผลเอกสารเมื่อโหลดลงในฐานข้อมูล คลิก "บันทึกและปิด"

ตอนนี้หน้าต่างควรมีลักษณะคล้ายกับที่แสดงด้านล่าง คลิก "ถัดไป"

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

ขั้นตอนต่อไป โปรแกรมจะเสนอให้ซิงโครไนซ์ทันทีหลังจากสร้างการตั้งค่าการแลกเปลี่ยนข้อมูล. เห็นด้วยกับสิ่งนี้แล้วคลิก "เสร็จสิ้น"

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

ลองดูตัวอย่างสมมติว่าใน UT มีคู่สัญญาชื่อ "PharmGroup LLC" และ TIN 1234567 และใน BP ก็มีคู่สัญญาที่มี TIN 1234567 เช่นกัน แต่ชื่อ "PharmGroup" หากเราไม่เปรียบเทียบสิ่งเหล่านี้ สองวัตถุเมื่อเปรียบเทียบข้อมูลในขั้นตอนการซิงโครไนซ์จากนั้นหลังจากการซิงโครไนซ์ในเครื่องรับ (Enterprise Accounting 3.0) เราจะมีคู่สัญญาสองรายที่มี TIN 1234567 และสองชื่อ "PharmGroup LLC" และ "PharmGroup" ตามลำดับ เพื่อหลีกเลี่ยงสถานการณ์ดังกล่าว จึงได้มีการคิดค้นกลไกในการเปรียบเทียบวัตถุขึ้น

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

ขั้นตอนสุดท้ายของการแลกเปลี่ยนข้อมูลระหว่าง 1C

ในขั้นตอนสุดท้ายโปรแกรมจะแสดงหน้าต่างต่อไปนี้ซึ่งผู้ใช้จะได้รับแจ้งว่าการซิงโครไนซ์สำเร็จให้คลิก "เสร็จสิ้น" ณ จุดนี้ การซิงโครไนซ์ระหว่างฐานข้อมูลในการแลกเปลี่ยนทางเดียวจาก "Trade Management 11.1" (UT) เป็น "Enterprise Accounting 3.0" (BP) เสร็จสมบูรณ์