เอกสาร 1c ของข้อมูลภายนอก ภายนอกก็เก็บข้อมูลไว้ คั่นหน้า "ส่วย" ของรูปแบบของเจ้าหน้าที่ของ dzherel ใหม่

โกลอฟนา / โคริสน์ พีแซด

รีลีส 8.2.14.533 - มีการสร้างเวอร์ชันที่เสถียรไม่มากก็น้อยของแพลตฟอร์มรุ่นที่ 14 ถึงเวลาแล้วที่เราจะลองใช้พลังมหัศจรรย์ของฝ่ายขวา - “พลังภายนอกของข้อมูล”

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

1) การปรับตัวและ vikoristannya - หากไม่มี "การเต้นรำกับแทมบูรีน" มันเป็นไปไม่ได้

A) เพิ่มเนื้อหาภายนอก - ไม่มีอะไรซับซ้อนเลย
b) ทำเครื่องหมายที่ช่อง "เลือกจากรายการ" - obv'yazkovo - นี่เป็นสิ่งจำเป็นในการเปลี่ยนประสิทธิภาพให้สั้นลงและหลีกเลี่ยงปัญหาใด ๆ
วี)
(รูปภาพ: http://pics.livejournal.com/comol/pic/0000cr1r.png)
- มีแรงกดดันอย่างมากต่อ "..." - การเชื่อมต่อนั้นเป็น ODBC จิไม่ใช่ OLEDB อย่างที่ใครๆ เรียกเรา แต่ยิ่งต่ำกว่า

และอยู่ที่นี่แกน ตามลำดับมากขึ้น.

ไดรเวอร์ ODBC นี้ - เมื่อใดก็ตามที่ใช้เวอร์ชันไคลเอ็นต์ - เซิร์ฟเวอร์ - จำเป็นต้องทำงานบนเซิร์ฟเวอร์ หากคุณกำลังพัฒนาบนระบบหนึ่งและเวอร์ชันที่ใช้งานได้บนอีกระบบหนึ่ง (ตามที่เรียกว่า) ให้สลับไปใหม่เพื่อที่คุณจะได้ไม่รู้สึกประหลาดใจ คำแนะนำที่ดี แต่ให้เลือกไดรเวอร์ที่เก่าที่สุดหรือใหม่ล่าสุดเนื่องจากคุณไม่ได้สนใจเรื่องความเร็วเป็นพิเศษ และคุณไม่ต้องการเกินความสามารถของมาตรฐาน SQL92 สิ่งนี้จะทำให้คุณมีความวิกลจริตที่ยิ่งใหญ่ที่สุด ตัวอย่างเช่น สำหรับ SQL Server 2008 ไดรเวอร์ที่สั้นที่สุดจะเป็น SQL Server Native Client 11 แต่ฉันขอแนะนำให้คุณเลือก SQL Server ไม่เช่นนั้นเนทีฟไคลเอ็นต์นี้จะต้องติดตั้งบนเซิร์ฟเวอร์หรือบนเครื่องไคลเอนต์ทั้งหมด (แต่ละเครื่อง) ด้วยไฟล์เวอร์ชันอื่น) และฉันจะเล่นไฟล์พิเศษสำหรับไฟล์ธรรมดาๆ ที่คุณไม่สามารถแจกของรางวัลได้

E) บทสนทนามาตรฐานสำหรับการเลือกเซิร์ฟเวอร์

G) เลือกตารางและรายละเอียด... พลังอันน่าทึ่ง - คุณสามารถเปลี่ยนได้ทันทีตามที่คุณต้องการ (และรายละเอียดด้วย) ในกรณีนี้ ชื่อของเขตข้อมูลจะแสดงต่อเจ้าหน้าที่

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

พารามิเตอร์ = ExternalData.DAX.OtrimatiGalniParametriZ'ednannya();
พารามิเตอร์ มาตรฐานการรับรองความถูกต้อง = จริง;
พารามิเตอร์ Im'ya Koristuvach = "sa";
พารามิเตอร์รหัสผ่าน = "pas";
พารามิเตอร์ RowZ'ednannya = "DRIVER=(SQL Server);SERVER=servet;UID=sa;PWD=;DATABASE=ฐานข้อมูล";
พารามิเตอร์ DBMS = "MSSQLServer";

ExternalData.DAX.SetOutsideParametersConnect (พารามิเตอร์);
ExternalData.DAX.SetParametersIdentityKoristuvach(ImyaKoristuvach(), พารามิเตอร์);
ExternalData.DAX.SetSessionParameters (พารามิเตอร์);

ExternalData.DAX.SetSucce();

บางทีบางสิ่งอาจไม่จำเป็นแต่ก็ใช้ได้ ต้องใช้รหัส Vikonati ครั้งหนึ่ง-

หลังจากนั้นก็เชื่อมต่อได้เป็นธรรมดา...ไสยศาสตร์ก็ไม่จำเป็น...
2) ข้อมูล Dzherela น้อยกว่าสำหรับการอ่าน

ปาฏิหาริย์จะไม่เกิดขึ้น...แต่บางครั้งคุณก็อยากให้เป็นเช่นนั้น
3) ไม่สามารถสอดคล้องกับเกียร์ข้อมูลภายในได้ในเวลาเดียวกัน

ฉันไม่ค่อยเจาะจงเกี่ยวกับข้อเท็จจริงนี้มากนัก ฆ่าทันที

เป็นยังไงบ้าง... ทำไมพวกเขาตรวจสอบแล้วจินตนาการและเลียริมฝีปากเหมือนเราอยู่ในเครื่องดื่มเดียวที่รวมข้อมูลจาก 1C เข้าด้วยกันอย่างรวดเร็ว - เป็นกลุ่ม แทรกในคำตอบ ไม่ใช่ที่นี่.. .

แน่นอนว่าเอลไม่สำคัญสำหรับคนที่ตระหนักรู้โดยธรรมชาติ... ความคิดแบบไหนที่ตกลงไปในความคิด? ถูกต้องแล้ว - ตารางเวลา:

4) ไม่สามารถใช้ VIKORISTS เหล่านี้กับตารางเวลาในเวลาเดียวกันได้

และแกนนั้นไม่ได้คล้ายกับปัญหาทางเทคโนโลยีอีกต่อไป แต่ยังคล้ายกับที่เราต้องการ "เพื่อว่าชีวิตจะไม่เป็นสวรรค์" ที่จะได้รับ (IMG :)

สำหรับผู้ที่ไม่ทราบ จะอยู่ใน ACS บนแท็บ "การเชื่อมโยงชุดข้อมูล" คุณยุ่งกับพวกเขาบ่อยไหม? ด้วยตนเอง? บางทีพวกเขาต้องการให้เรา vikorize พวกเขาบ่อยขึ้น แกนเดียวที่มีคือคอลัมน์ "ลิงก์จิต" และ "ลิงก์พารามิเตอร์" ในการกำหนดค่าทั่วไปแต่ละรายการ เราไม่ทราบถึงการใช้ vicoristan ของพวกเขา ยังไม่ชัดเจนในเอกสารประกอบและใน Khrustalova คุณต้องการให้ฉันอธิบายว่า "การเชื่อมโยงทางจิต" ทำงานอย่างไร จะเขียนอย่างไร Requisite Dzherel = Revisit Priymach ใช้งานไม่ได้ แน่นอน คุณสามารถเขียนความคิดของคุณลงในช่อง "Viraz" ได้ โดยส่วนใหญ่แล้วจะปรากฏ... มันไม่ง่ายเลยที่จะจากไป

ขณะเดียวกัน ก็ได้ตรัสพระบัญญัตินี้ไว้ดังนี้

ฟังก์ชั่นเตรียมใช้งาน GereLoData()

DateStart = ComponentNashtuvan.Nashtuvannya.ParametersData.Elements.Values;
DataCon = ComponentNashtuvan.Nalastuvannya.ParametriDanikh.Elementi.Value;
Yakscho DataCon > "20100101" คำสั่ง
ดาต้าคอน = "20100101";
คิเนตส์ยักโช;

CN = หมายเลขรอบคัดเลือกใหม่ (15.2);
KS = รอบคัดเลือกแถวใหม่ (255);

ArrayNumber = อาร์เรย์ใหม่();
ArrayNumber.Addati(ประเภท("หมายเลข"));

ArrayRow = อาร์เรย์ใหม่();
ArrayRow.Addati(ประเภท("แถว"));

ArrayData = อาร์เรย์ใหม่();
ArrayData.Addati(ประเภท("วันที่"));

//ตารางถูกเก็บไว้เพื่อวัตถุประสงค์ทางบัญชี
หมายเลขประเภท = คำอธิบายประเภทใหม่ (หมายเลขอาร์เรย์, CN);
TypeRow = ประเภทคำอธิบายใหม่ (ArrayRow, KS);
TypeDate = DescriptionType ใหม่ (ArrayData);

//ตารางสำหรับรวบรวมข้อมูลจาก SQL
TZ = ค่าตารางใหม่();
TK.Columns.Addati("รหัสการตั้งชื่อ", RowType);
TK.Columns.Addati("จำนวน", TypeNumber);
TK.Columns.Add("ระยะเวลา",DateType);

TZ.Index.Add("ระยะเวลา");

//เชื่อมต่อกับ SQL
แถวการเชื่อมต่อ = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=sa;Pwd=;Data Source=;Use Procedure for Preparation=1;Auto Translate=True;Packet Size=4096;Workstation ID=;Use การเข้ารหัสสำหรับข้อมูล=False;แท็กด้วยการจัดเรียงคอลัมน์เมื่อเป็นไปได้=False;แคตตาล็อกเริ่มต้น=รายงาน";
การเชื่อมต่อ = COMObject ใหม่ ("ADODB.Connection");
Command = COMObject ใหม่ ("ADODB.Command");
RecordSet = COMObject ใหม่ ("ADODB.RecordSet");
วันที่ = "";
พยายาม
Connection.Open (ตัวย่อ (แถวเชื่อมต่อ));
Command.ActiveConnection = การเชื่อมต่อ;
Command.CommandText = "เลือก * PH โดยที่จุด >= "" + แถว (รูปแบบ (DateStart, "DF=yyyyMMdd")) + "" และจุด RecordSet = Command.Execute();
RecordSet.MoveFirst();
ตำหนิ
เลี้ยวทีเค;
KinetsProby;

Pocky RecordSet.EOF = วงไร้สาระ
แถว = TZ.Addati();
Row.NomenclatureCode = RecordSet.Fields(RecordSet.Fields.Item(1).Name).Value;
Row.Qnty = RecordSet.Fields(RecordSet.Fields.Item(12).Name).Value;
Row.Period = RecordSet.Fields(RecordSet.Fields.Item(13).Name).Value;
ชุดระเบียน.MoveNext();
KіnetsCycle;

Zapit = Zapit ใหม่();
VrTable = ตารางจับเวลาผู้จัดการคนใหม่();
คำขอติดตั้งพารามิเตอร์ ("vrDataTable", TK);
Request.SetParameter("DateStart", DateStart);
คำขอติดตั้งพารามิเตอร์ ("DataCon", DataCon);
Request.Text = "VIBRATI"
-
vrTableData.รหัสการตั้งชื่อ,
-
vrDataTable.จำนวน,
-
vrDataTable.ระยะเวลา
|วางข้อมูลตาราง
|ล
-
&vrTableDanih YAK vrTableDanih

|เด
-
vrDataTable.Period >= &วันที่เริ่มต้น

-
ฉันอยู่ใน DataTable.PeriodRequest.Viconati();

TZ = ไม่ได้กำหนด;

ศาปิต = ศาปิตใหม่;
Query.ManagerTimeHourTable = ตารางเวลา;
Query.Text = "นี่คือสิ่งที่เขียนเป็นส่วนหนึ่งของตารางเสมือน";
ผลลัพธ์ = Query.Viconati();

เลี้ยวผลลัพธ์;

ฟังก์ชันสิ้นสุด

ชุดภายนอก = InitializeDzhereloDanik();

SetData = โครงสร้างใหม่ ();

DialData.Insert("SQLTable", ExternalDial);

  • ติโปวี ซวิติ.
  • มีโค้ดไม่มากนักและไม่ตรงกับโค้ดมาตรฐาน... โดยคุณสามารถใช้ฟังก์ชันเพิ่มเติมของตัวสร้างคิวรีได้ และใน ACS คุณสามารถเพิ่มได้เฉพาะฟังก์ชัน DATA COMPANY เท่านั้น

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

[คุณต้องลงทะเบียนเพื่อตรวจสอบข้อความของคุณ]

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

      ในการทำงานกับข้อมูลที่จัดเก็บไว้ในฐานข้อมูลอื่นจำเป็นต้องพัฒนากลไกพิเศษ

      เวอร์ชัน 1C 8.2.14 มีตัวใหม่ชื่อว่า External Data Files 1C ซึ่งจะทำให้การทำงานของโปรแกรมเมอร์ง่ายขึ้น ดังนี้

      ขณะนี้ไม่จำเป็นต้องสร้างกลไกพิเศษในการลบข้อมูล

      มีการเพิ่มตัวประมวลผลข้อมูล 1C ใหม่ไม่น้อย

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

      ก่อนอื่นคุณต้องระบุแถวการเชื่อมต่อ คุณสามารถป้อนด้วยตนเองหรือสร้างได้โดยกดปุ่ม "..."

      ไดรเวอร์สำหรับเครื่องสั่น "SQL Server" เฉพาะของเราคืออะไร

      จำพารามิเตอร์พื้นฐานสำหรับการเชื่อมต่อกับ SQL สามารถป้อนหรือเลือกชื่อเซิร์ฟเวอร์ได้จากรายการ

      1C สร้างการเชื่อมต่อกับ SQL และเลือกฐานข้อมูลเฉพาะจากรายการ

      หลังจากนั้น 1C จะแสดงรายการตารางในฐานข้อมูลนี้และคอลัมน์ คุณต้องเลือกตารางที่ต้องการโดยทำเครื่องหมายที่ตารางเหล่านั้น

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

      เพิ่มก้นเพลาลงในโต๊ะ:

      คอลัมน์เพิ่มชนเพลา:

      เพื่อให้แพลตฟอร์ม 1C ทำงานกับตารางภายนอกในลักษณะเดียวกับการทำงานกับที่ปรึกษา 1C คุณสามารถระบุพารามิเตอร์เพิ่มเติมสำหรับตารางได้:

      • ในฟิลด์คีย์ – ป้อนคอลัมน์ใดคอลัมน์หนึ่งเพื่อให้แน่ใจว่ามีการระบุแถวที่ไม่ซ้ำ หากมั่นใจว่ามีแถวจำนวนหนึ่งไม่ซ้ำกัน วิธีการนี้จะใช้งานไม่ได้ (คล้ายกับช่องรหัส)
      • ในฟิลด์ “ฟิลด์การแจ้ง” – ป้อนหนึ่งในคอลัมน์สำหรับการบ่งชี้แถวที่สั้นที่สุด (คล้ายกับฟิลด์ชื่อ)
      • ในชนิดข้อมูลตารางพลังงาน – ป้อนข้อมูลวัตถุ

      2. เปเรสคเลียด

      การเชื่อมต่อกับฐานข้อมูลระยะไกลจะไม่เกิดขึ้นโดยอัตโนมัติ ในการเชื่อมต่อคุณต้องเลือกเมนูมาตรฐาน

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

      คุณจะต้องตั้งค่าพารามิเตอร์สำหรับการเชื่อมต่อกับฐานข้อมูลก่อน

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

      คัดลอกแถวและระบุในโหมดผู้ประกอบการ 1C

      หลังจากนี้จำเป็นต้องตัดการเชื่อมต่อ

      เมื่อทำการเชื่อมต่อแล้ว คุณสามารถทำงานกับรายการได้

      3. Vikoristannya ใน Movi 1C

      การเชื่อมต่อสามารถทำได้โดยใช้รหัสโปรแกรม 1C

      พารามิเตอร์การเชื่อมต่อระบุไว้ดังนี้:
      ParametersConfiguration = ExternalDataData.ImageDataConfigurator.OriginalParametersConfiguration();

      พารามิเตอร์การเชื่อมต่อ มาตรฐานการรับรองความถูกต้อง = จริง;
      พารามิเตอร์การเชื่อมต่อ อิมยา โคริสตูวัค = "sa";
      พารามิเตอร์รหัสผ่าน.รหัสผ่าน = "รหัสผ่าน";
      พารามิเตอร์การเชื่อมต่อ แถวการเชื่อมต่อ = “แถวการเชื่อมต่อจากตัวกำหนดค่า”;
      พารามิเตอร์การเชื่อมต่อ DBMS = "MSSQLเซิร์ฟเวอร์";

      ExternalGerelaData.ImageGerelaConfigurator.InstallOtherParametersConnection (การเชื่อมต่อพารามิเตอร์);
      ExternalDirectoryData.NameDerelaConfigurator.SetParametersSettingKoristuvach (NameKoristuvach(), พารามิเตอร์);
      ExternalGerelaData.ImageGerelaConfigurator.SetSessionParameters (พารามิเตอร์);
      ExternalGerelaData.Im'yaGerelaConfigurator.InstallSpec();

      คุณสามารถดึงข้อมูลจากฐานข้อมูลด้วยความช่วยเหลือ ตัวอย่างของข้อความที่เขียนสำหรับอุปกรณ์ภายนอก OurZovnishnyJerel และตารางตารางของ ExternalDzherel:

      สั่น
      ตารางชื่อ Gerel ภายนอกฟิลด์
      ซี
      DzhereloData ภายนอก Dzherel ภายนอกของเรา ตาราง ตารางของ Dzherelo ภายนอก "

      Zovnіshne dzherelo data 1C - ทำงานกับไฟล์ Excel

      ลองใช้ตัวเลือกอื่น - ทำงานจากไฟล์ Excel ผ่านไฟล์ข้อมูล 1C ภายนอก

      สามารถสร้างไฟล์ Excel ที่ง่ายที่สุดได้

      Dodamo ภายนอก dzherelo เรียกว่าไฟล์ Excel ค่อนข้างมาก จนถึงตอนนี้ ให้เพิ่มตาราง “Sheet1$” หากคุณทำเครื่องหมายว่าไม่สำคัญ ให้ใช้ไอคอน Excel พร้อมด้วยสัญลักษณ์ “$” ที่เพิ่มเข้ามา

      เมื่อคุณออกจาก SQL ให้เพิ่มคอลัมน์ คุณสามารถเพิ่มได้ด้วยตนเอง สิ่งสำคัญคือต้องสังเกตความหลากหลายของประเภทคอลัมน์ที่เพิ่ม มิฉะนั้น คุณสามารถยกเลิกการเลือกตัวเลือก "ความหลากหลายของประเภทข้อมูล" ได้ในภายหลัง

      สำหรับคอลัมน์ คุณต้องระบุชื่อและชื่อ 1C ในช่องข้อมูล

      สำหรับ Excel มีคุณสมบัติพิเศษ (แก้ไขเป็นรูปแบบ “พารามิเตอร์น้อยเกินไป ต้องใช้ 3”):

      • หากแถวแรกของตาราง Excel มีชื่อคอลัมน์ต่างกัน คุณเพียงแค่ระบุชื่อคอลัมน์ เช่น "รหัส"
      • มิฉะนั้น จำเป็นต้องระบุชื่อนอกชื่อตาราง "Sheet1$.Code" หรือในพารามิเตอร์เพิ่ม "HDR = NO;"

      พารามิเตอร์การเชื่อมต่อสำหรับไฟล์ Excel มีลักษณะดังนี้:

      • ไฟล์ XLSX (เวอร์ชัน Office 2007)
        ไดรเวอร์=(ไดรเวอร์ Microsoft Excel (*.xls, *.xlsx, *.xlsm, *.xlsb));DBQ=D:\FileExcel.xlsx;
      • ไฟล์ XLS (เดิม)
        ไดร์เวอร์=(ไดร์เวอร์ Microsoft Excel (*.xls)); รหัสไดร์เวอร์=790; DBQ=D:\FileExcel.xls;
        หากคุณไปที่ไฟล์ คุณจะต้องระบุสิทธิ์ของคุณ

Cindowing Jerela Dani 1C - Porivnino ความแปลกใหม่ของ metadania 1s 8.3 Ta 8.2 ด้านหลังกระป๋องก่อนนิวเคลียร์ของ PIDKOVENNYA ถึง 1C SENIKH Dani: ตาราง SQL, Excel, Access, FoxPro (DBF), INSHI db) - และเริ่มอ่านจากวิธีที่ง่ายที่สุด ไฟล์ txt/csv

สิ่งนี้ทำให้ไม่มีความเป็นไปได้สำหรับระบบอื่น มาดูรายงานกันดีกว่า

การปรับไฟล์ข้อมูลภายนอกใน 1C 8

การปรับอุปกรณ์ภายนอกเป็นรายบุคคลตามประเภทสกินของระบบ ตามกฎแล้ว Ale ส่วนที่ซ่อนอยู่ของการตั้งค่าคือการติดตั้งแถวการเชื่อมต่อ:

ชมบทเรียนวิดีโอ 267 บทเรียนจาก 1C ฟรี:

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

Vikoristannya แหล่งข้อมูลภายนอกใน 1C 8.3

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

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

เพื่อให้การบันทึกในอุปกรณ์ภายนอกเป็นไปได้ บริษัท 1C ได้เพิ่มพลังใหม่ให้กับตารางข้อมูลและฟิลด์ของอุปกรณ์ภายนอก:

  • สำหรับทั้งโต๊ะ – พลัง TilkiReading. TilkiReading = ความจริงหมายความว่าการเปลี่ยนแปลงข้อมูลในตารางนี้เป็นไปไม่ได้
  • สำหรับฟิลด์ต่อไปนี้ของตาราง – กำลัง TilkiReading, อนุญาตให้เป็นค่าว่างі ความสำคัญZapovennya:
    • TilkiReading = ความจริงหมายความว่าการเปลี่ยนแปลงข้อมูลในฟิลด์นี้เป็นไปไม่ได้
    • AllowNull = จริงหมายความว่าฟิลด์นี้สามารถมีค่าได้ โมฆะ;
    • ความสำคัญZapovennyaวางค่ามาตรฐานของฟิลด์นี้ (ตามที่เป็นอยู่)

คุณสามารถสร้างพลังได้ด้วยวิธีนี้ (เมื่ออธิบายตารางด้วยตนเอง) หรือแพลตฟอร์ม (เมื่อสร้างตารางโดยผู้ออกแบบ)

  • TilkiReading = ความจริงแทรก ตัวอย่างเช่น สำหรับการแสดงผล (มุมมอง) ตาราง การแสดงภาพ (ผลลัพธ์ของฟังก์ชัน) เป็นต้น ข้อมูลในตารางไม่สามารถเปลี่ยนแปลงได้
  • TilkiReading = ความจริงระบุช่องที่ติดตั้งอัตโนมัติ ( เพิ่มอัตโนมัติ) เขตข้อมูลจากการคำนวณและเขตข้อมูลที่คล้ายกัน ข้อมูลในช่องดังกล่าวไม่สามารถเปลี่ยนแปลงได้
  • AllowNull = จริงตั้งค่าไว้สำหรับทุกฟิลด์ ยกเว้นฟิลด์หลักและฟิลด์เงียบตามที่อธิบายไว้ในบทความก่อนหน้านี้ ไม่เป็นโมฆะ;
  • ความสำคัญZapovennyaแทรกฟิลด์ทุกครั้งหากอุปกรณ์ภายนอกมีค่ามาตรฐานของฟิลด์ (value ค่าเริ่มต้น).

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

  • CreateDialบันทึก()- สำหรับตารางที่ไม่ใช่วัตถุประสงค์
  • วิธีการใหม่ สร้างวัตถุ()- สำหรับตารางวัตถุ

ชัดเจนในวัตถุ ExternalDataRecordTableі ExternalDataTableObjectวิธีการใหม่ได้ปรากฏขึ้น เขียน()і ความมีชีวิตชีวา().

บรรณาการเพิ่มเติม

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

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

  • รหัส(AllowNull = จริง);
  • ชื่อ(AllowNull = จริง);
mFeature = ExternalData.IM.Table.shop_feature.CreateObject(); mCharacteristic.id = รหัส; mCharacteristic.name = ชื่อ; mCharacteristic.เขียน();

ตัวดำเนินการ Vikonanny เขียน()มาถึงจุดที่จะมีปริมาณการโทรจากต้นทางกัน ก่อนการบันทึกจากนั้นบันทึกทางกายภาพจะถูกเพิ่มลงในตารางอุปกรณ์ภายนอก ( แทรก) จากนั้นจะมีการคลิกที่ตัวอย่างด้านล่าง หมายเหตุ.

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

การเปลี่ยนแปลงข้อมูล

เมื่อเปลี่ยนแปลงข้อมูล ค่าของฟิลด์ทั้งหมดในตารางจะได้รับการอัปเดต TilkiReading = เรื่องไร้สาระ.

MCharacteristic = Zovnіshni Dzherela Danikh ฉัน. ตาราง ร้านค้า_คุณลักษณะ mObject = mCharacteristic.OtrimatiObject(); mObject.name = ชื่อ; mObject.เขียน();

หากคุณต้องการจดเพียงไม่กี่ฟิลด์ คุณสามารถป้อนการถ่ายโอนได้โดยตรงจากภาษาที่ดาวน์โหลดโดยใช้วิธีการเพิ่มเติม SetRecordFields()і OtrimatiWriteFields().

ได้เห็นการไว้อาลัย.

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

MCharacteristic = Zovnіshni Dzherela Danikh ฉัน. ตาราง ร้านค้า_คุณลักษณะ mObject = mCharacteristic.OtrimatiObject(); mObject.Delete();

การทำธุรกรรม

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

  • พิมพ์ธุรกรรม();
  • กระทำธุรกรรม();
  • Skasuvatiธุรกรรม().

การปิดกั้น

  • อัตโนมัติ;
  • เคโรวานี;
  • การทดสอบอัตโนมัติ.

เช่นเดียวกับพลังของโต๊ะของร่างกายภายนอก การแยกธุรกรรม:

นอกจากนี้ คุณยังสามารถตั้งค่าระดับการบล็อกสำหรับวิธีการนี้ได้อย่างอิสระ พิมพ์ธุรกรรม().

เสริมบทความมาตรฐานด้วยก้น) ถ้าเกินชั่วโมงผมจะเพิ่มก้นให้ครับ

© 2023 androidas.ru - ทุกอย่างเกี่ยวกับ Android