ขอแพ็คเกจ 1s 8.3. คำขอเป็นกลุ่มสำหรับหุ่นจำลอง วิธีการ Run() และ RunBatch()

บล็อกบริษัท 1C GOODWILL

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

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

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

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

ตัวอย่างการสร้างแพ็คเกจคำขอในภาษา 1C

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

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

การเลี้ยงตนเอง ผู้ปกครอง

รหัสที่สนับสนุนตนเอง

การสนับสนุนตนเอง รหัสการเลือกด่วน

พึ่งตนเองได้ ชื่อ

ชนิดพึ่งตนเองได้

การพึ่งพาตนเองนอกงบดุล

การพึ่งพาตนเองเชิงปริมาณ

ผังบัญชี การพึ่งพาตนเอง AS การพึ่งพาตนเอง

////////////////////////////////////////////////////////////////////////////////

ประเภทที่สนับสนุนตนเองหมายเลข Subconto.Line AS หมายเลขบรรทัด

ประเภทการสนับสนุนตนเองของ Subconto.ViewSubconto AS TypeSubconto,

Self-supportingTypesSubconto.TypeSubconto.Name AS ชื่อ

Self-supportingTypesSubconto.TypeSubconto.ValueType ASValueType,

ประเภทที่สนับสนุนตนเอง Subconto.OnlyTurnover AS OnlyTurnover,

Self-supportingTypesSubconto.Summary AS Summative

ผังบัญชี ประเภทของบัญชีย่อย AS ประเภทของบัญชีย่อย

สั่งซื้อโดย

ประเภทการพึ่งพาตนเองSubconto.NumberLines

สำหรับฉันดูเหมือนว่านี้:

ตอนนี้ไปที่ตัวออกแบบแบบสอบถาม ที่นี่เราจะสนใจแท็บ "ขอแพ็คเกจ":

อย่างที่คุณเห็น เรามีคำขอสองชุด เมื่อดับเบิลคลิกที่รายการใดรายการหนึ่ง คุณสามารถดำเนินการแก้ไขต่อไปได้:

คลิกปุ่ม "ตกลง" และลองดูผลลัพธ์ของคำขอแบทช์

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

วิธีการ Run() และ RunBatch()

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

ArrayResults = Query.ExecuteBatch();

Selection1 = ArrayResults.Select();

ถ้า Select1.Next() แล้ว

//การดำเนินการกับการเลือก 1

สิ้นสุดถ้า;

SelectionViewsSubconto = ArrayResults.Select();

โพสต์ การทำงานกับคำขอแบทช์ใน 1C 8.3 และ 8.2 ปรากฏครั้งแรกในบล็อก บริษัท 1C GOODWILL

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

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

คำอธิบายของตัวออกแบบแบบสอบถามบนเว็บไซต์อย่างเป็นทางการ 1C 8: v8.1c.ru

ตารางและเขตข้อมูล - - - - - ข้อความค้นหาที่ซ้อนกัน (อยู่ระหว่างการพัฒนา)

ในการเรียกตัวออกแบบแบบสอบถาม 1s 8 ในโค้ดโปรแกรมคุณต้อง:

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

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

บทเรียน #1 ตัวสร้างแบบสอบถามเป็นกรณีการใช้งานที่ง่ายที่สุด

งาน: เขียนคำขอไปยังไดเร็กทอรีระบบการตั้งชื่อ เลือกระบบการตั้งชื่อทั้งหมดของไดเร็กทอรี

แท็บใหม่: ตารางและเขตข้อมูล

กลไกใหม่: การดูและแก้ไขข้อความคำขอโดยใช้ปุ่ม "คำขอ"

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

ส่วนทางทฤษฎีของบทเรียนหมายเลข 1

แท็บ ตารางและเขตข้อมูลประกอบด้วยสามส่วน:

ฐานข้อมูล- ส่วนนี้นำเสนอตารางฐานข้อมูลทั้งหมดที่สามารถใช้ในการสร้างแบบสอบถาม

ตาราง- ในส่วนนี้ จะมีการเลือกตารางที่จำเป็นสำหรับแบบสอบถามนี้ เพื่อย้ายพวกเขาออกจากส่วน ฐานข้อมูลจำเป็นต้อง:

  • หรือดับเบิลคลิกบนโต๊ะ
  • หรือใช้ปุ่ม ">" หรือ ">>"

ส่วนด้านบน ตารางมีหลายปุ่ม ส่วนใหญ่จะกล่าวถึงรายละเอียดเพิ่มเติมในบทเรียนต่อไปนี้ สำหรับตอนนี้ผมจะอธิบายเพียงสั้นๆเท่านั้น

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

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

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

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

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

ส่วนปฏิบัติของบทเรียนหมายเลข 1

เราได้จัดการกับทฤษฎีที่จำเป็นในการทำงานที่ให้ไว้ในบทเรียนนี้ให้สำเร็จ ฉันขอเตือนคุณว่ามันเป็นอย่างไร: เขียนคำขอไปยังไดเร็กทอรีระบบการตั้งชื่อ, เลือกระบบการตั้งชื่อทั้งหมดของไดเร็กทอรี

มาเริ่มสร้างคำขอสำหรับรายการกันดีกว่า:

  • มาสร้างคำขอใหม่และเปิดตัวสร้างโดยใช้วิธีการที่ระบุไว้ในตอนต้นของบทเรียน
  • ในส่วน ฐานข้อมูล,มาเปิดกระทู้กันดีกว่า ไดเรกทอรีและเราจะพบคำแนะนำที่นั่น ศัพท์;
  • เลือกและใช้ปุ่ม ">" เพื่อย้ายไปยังส่วนดังกล่าว ตาราง;
  • ในส่วน ตารางเปิดไดเร็กทอรีระบบการตั้งชื่อโดยใช้ไอคอน "+"
  • ในรายการฟิลด์ที่เปิดขึ้น ให้ค้นหาฟิลด์ ลิงค์และย้ายไปยังส่วนนั้น เขตข้อมูลโดยใช้ปุ่ม ">"
  • คำขอรายการพร้อมแล้ว คลิกปุ่ม "ตกลง" ที่ด้านล่างของหน้าต่างตัวออกแบบ

การสืบค้นแบบกลุ่มช่วยเสริมฟังก์ชันการทำงานของตารางชั่วคราวในทางตรรกะ และให้ตัวเลือกเพิ่มเติมเมื่อทำงานกับการสืบค้น

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

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

คำขอ = คำขอใหม่;
คำขอข้อความ = "
|เลือก
- ระบบการตั้งชื่อ SUM(ปริมาณ) AS ปริมาณ
|วาง DocTCH
|จาก
|ที่ไหน
- ลิงค์ = &ลิงค์
|จัดกลุ่มตามระบบการตั้งชื่อ
|;
|เลือกต่างๆ
- ศัพท์
|วางรายการสินค้า
|จาก
- เอกสาร.วัสดุสิ้นเปลือง.สินค้า
|ที่ไหน
- ลิงค์ = &ลิงค์
|;
|เลือก
- ศัพท์เฉพาะ
- Doc.Quantity AS Doc_Quantity,
- ISNULL(Reg.QuantityRemaining,0) AS Reg_Quantity
|จาก
- หมอ AS หมอ
- การเชื่อมต่อด้านซ้าย
- RegisterAccumulations.Remains of Goods.Remains(,
- ระบบการตั้งชื่อ B(เลือกหลากหลาย
- ศัพท์
- จาก
- รายการผลิตภัณฑ์ AS รายการผลิตภัณฑ์)) AS Reg
- โดย
- Doc.Nomenclature = Reg.Nomenclature";

ในขณะที่ Select.Next() วนซ้ำ
//ตรวจสอบยอดคงเหลือติดลบ
//ผ่านการลงทะเบียน
สิ้นสุดรอบ;
สิ้นสุดขั้นตอน

ในความเป็นจริง ฉันลบคำจำกัดความของวัตถุแบบสอบถามและการใช้ตัวจัดการตารางชั่วคราว รวมข้อความแบบสอบถาม (สังเกตตัวคั่น “;” ระหว่างข้อความ) ส่งผลให้ข้อความคิวรีสามารถอ่านได้ง่ายขึ้น (และเมื่อใช้ตัวสร้างคิวรี ความสามารถในการอ่านของคิวรีก็เพิ่มขึ้นอย่างมาก)

หลังจากดำเนินการค้นหาลงในตัวแปรแล้ว ผลลัพธ์อาร์เรย์เราจะมี 3 องค์ประกอบ สองรายการแรกจะมีตัวเลขที่แสดงลักษณะของจำนวนเรกคอร์ดที่วางอยู่ในตารางชั่วคราว DocTCH และ ListProducts และรายการที่สามจะมีการเลือกพร้อมกับฟิลด์ Nomenclature, Doc_Quantity และ Reg_Quantity

ให้เป็นตัวแปร ผลการสืบค้นมีเพียงตัวอย่างเท่านั้นที่จะเข้าได้

นั่นคือทั้งหมดสำหรับคำขอเป็นชุด กลไกที่สะดวกมากทั้งจากมุมมองของการเขียนแบบสอบถามและจากมุมมองของการอ่านแบบสอบถามที่ซับซ้อน

ข้อมูลที่นำมาจากเว็บไซต์

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

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

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

ทำไมเราทำไม่ได้หากไม่มีคำขอเป็นชุด?

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

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

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

อัลกอริทึมสำหรับการสร้างคำขอแบบแบตช์อย่างเชี่ยวชาญ

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

ข้อเสียของวิธีการ

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

เป็นผลให้เรามีตาราง:

ตอนนี้เราใช้คำขอแบบแบตช์ จำไว้ว่าเราต้องการเครื่องหมายอัฒภาคสำหรับสิ่งนี้ เราได้รับ:

โปรดทราบว่าคำขอครั้งที่ 3 รวมผลลัพธ์ของสองคำขอแรก มาดูกันว่าเกิดอะไรขึ้น:

ทีนี้ลองเพิ่มความสวยงามและเปลี่ยนข้อความสำหรับคำขอที่ 3 เล็กน้อยเช่นนี้

ตอนนี้เรามีสิ่งนี้:

สิ่งที่เหลืออยู่คือการรวมคอลัมน์เข้ากับระบบการตั้งชื่อและใส่ศูนย์ในเซลล์ว่าง



มีคำถามอะไรไหม?

แจ้งการพิมพ์ผิด

ข้อความที่จะส่งถึงบรรณาธิการของเรา: