การตั้งค่าการค้นหาข้อความแบบเต็มใน 1 วินาที เครื่องมือค้นหาข้อความแบบเต็ม (1Cv8) อนุญาตให้ใช้ตัวดำเนินการพิเศษเมื่อระบุนิพจน์การค้นหา
เคล็ดลับที่ 1: ปิดใช้งานการค้นหาข้อความแบบเต็ม*
นักบัญชีส่วนใหญ่ไม่ทราบถึงการมีอยู่ของฟังก์ชันนี้และไม่เคยใช้งาน (บริการ - ค้นหาข้อมูล)
กลไกการค้นหาข้อความแบบเต็มใน 1C ช่วยให้คุณค้นหาข้อมูลใน 1C ได้ คำหลัก(คล้ายกับการค้นหาบนอินเทอร์เน็ต เมื่อคุณป้อนคำแล้วได้รับผลลัพธ์การค้นหา) ในขณะเดียวกัน เวลาในการค้นหาขึ้นอยู่กับปริมาณของฐานข้อมูลอย่างมากและอาจใช้เวลาหลายชั่วโมง การปิดใช้งานกลไกการค้นหาข้อความแบบเต็มจะไม่ส่งผลต่อฟังก์ชันอื่น ๆ และความเสถียรของงานใน 1C
กลไกการค้นหาข้อความแบบเต็มใน 1C เปิดใช้งานตามค่าเริ่มต้น หากต้องการปิดใช้งานการค้นหาข้อความแบบเต็มคุณต้องไปที่ การดำเนินงาน - การควบคุมการค้นหาข้อความแบบเต็ม-การตั้งและการถอดป้าย" อนุญาตให้ค้นหาข้อความแบบเต็ม»
การปิดใช้งานกลไกการค้นหาข้อความแบบเต็มจะดำเนินการในโหมดพิเศษ (ไม่มีใครควรทำงานในโปรแกรมยกเว้นคุณ)**
การปิดใช้งานเครื่องมือค้นหาข้อความแบบเต็มจะช่วยเพิ่มประสิทธิภาพได้มากถึง 10%
เคล็ดลับที่ 2: การคำนวณผลลัพธ์ใหม่*
นักบัญชีส่วนใหญ่ไม่ทราบเกี่ยวกับการมีอยู่ของการดำเนินการนี้ และจะต้องดำเนินการทุกเดือน
ผลลัพธ์คือกลไก 1C สำหรับการเข้าถึงข้อมูลอย่างรวดเร็วเมื่อสร้างรายงานและดำเนินการคำนวณต่างๆ
ในการคำนวณผลรวมใหม่ คุณต้องไปที่การดำเนินการ - การจัดการผลรวม กำหนดวันที่ที่จะคำนวณผลรวม (ต้นเดือนปัจจุบัน) ในส่วน "การลงทะเบียนทั้งหมด" และคลิกปุ่ม "เรียกใช้"
การคำนวณผลลัพธ์ใหม่จะดำเนินการในโหมดพิเศษ (ไม่มีใครควรทำงานในโปรแกรมยกเว้นคุณ)**
การคำนวณผลลัพธ์ใหม่ช่วยเพิ่มผลผลิตได้สูงสุดถึง 10%
เคล็ดลับ 3: ปิดใช้งานการกำหนดเวอร์ชันออบเจ็กต์***
นักบัญชีส่วนใหญ่ไม่ทราบเกี่ยวกับการมีอยู่ของฟังก์ชันนี้และไม่ได้ใช้
ต่างจากบันทึกมาตรฐาน การกำหนดเวอร์ชันออบเจ็กต์จะช่วยให้คุณสามารถจัดเก็บข้อมูลไม่เพียงแต่เกี่ยวกับผู้ใช้ที่ทำงานกับเอกสารเท่านั้น แต่ยังรวมไปถึงสิ่งที่เขาเปลี่ยนแปลงอย่างแน่นอน (บริการ - ประวัติการเปลี่ยนแปลงออบเจ็กต์) โหมดนี้อาจมีประโยชน์ แต่ขอแนะนำให้เปิดใช้งานเฉพาะรายการเอกสารที่ระบุเท่านั้น เนื่องจาก มันทำให้ประสิทธิภาพ 1C ลดลงและฐานข้อมูลเพิ่มขึ้น
การกำหนดเวอร์ชันได้รับการกำหนดค่าผ่านการดำเนินการ - การตั้งค่าโปรแกรม - การกำหนดเวอร์ชัน หากไม่จำเป็นต้องตั้งค่า คุณจะต้องลบกล่องกาเครื่องหมาย “ใช้การกำหนดเวอร์ชันออบเจ็กต์” ออก
หากจำเป็นต้องมีการตั้งค่าสำหรับรายการเอกสารเฉพาะ ให้ไปที่ “การตั้งค่าการกำหนดเวอร์ชันของวัตถุ” และคลิกขวาเพื่อตั้งค่าการตั้งค่า “เวอร์ชัน” สำหรับวัตถุที่ต้องการ**
การปิดใช้งานการกำหนดเวอร์ชันจะทำให้ประสิทธิภาพเพิ่มขึ้นถึง 5%
_________________________________________________________________
*สำหรับการกำหนดค่าตาม “1C: การจัดการองค์กรอุตสาหกรรม”, “1C: ระบบอัตโนมัติแบบรวม”, “1C: การบัญชีองค์กร 2.0”, “1C: การจัดการการค้า 10.3”
**ก่อนที่จะดำเนินการตามปกติกับฐานข้อมูล จำเป็นต้องสร้างสำเนาของฐานข้อมูลก่อน
***สำหรับการกำหนดค่าตาม “1C: Manufacturing Enterprise Management”, “1C: Integrated Automation”
แม้ว่านักพัฒนาจะประกาศการค้นหาข้อความแบบเต็มบนแพลตฟอร์ม 8.3 เมื่อนานมาแล้ว (จากแพลตฟอร์ม 8.3.5) ใน การกำหนดค่าทั่วไปมันไม่ได้ถูกใช้อย่างแข็งขัน ในรุ่นล่าสุดของ Enterprise Accounting 3.0 นักพัฒนาได้เปิดใช้งานการค้นหาข้อความแบบเต็มในหลายรายการ สิ่งนี้ทำให้ผู้ใช้ของฉันตกใจ - โปรแกรมหยุดการค้นหา
แน่นอนว่าการค้นหาข้อความแบบเต็มใช้งานได้ แต่ผู้ใช้จะสับสนเมื่อไม่เห็นหน้าต่างค้นหา สถานการณ์การใช้งานทั่วไป: พวกเขาเริ่มพิมพ์จากแป้นพิมพ์ ในระหว่างขั้นตอนการพิมพ์ หน้าต่าง "ค้นหา" จะปรากฏขึ้น ซึ่งระบุฟิลด์ที่จะดำเนินการค้นหา ข้อความที่ค้นหา และโหมดการค้นหา "ส่วนหนึ่งของสตริง"
เมื่อกดปุ่ม Enter รายการจะถูกกรอง และแถบสถานะการค้นหาจะปรากฏเหนือรายการ ผู้ใช้เองจะเป็นผู้กำหนดว่าฟิลด์ใดและสิ่งที่เขากำลังมองหา การค้นหาใหม่จะเริ่มทำงานทันทีที่คุณพิมพ์และส่งผลต่อฟิลด์ทั้งหมดที่แสดงในรายการ หน้าต่างแยกต่างหากไม่ปรากฏขึ้น คำค้นหาที่ตรงกันทั้งหมดจะถูกเน้นด้วยสี
เราใช้ชีวิตอยู่กับการค้นหาครั้งใหม่เป็นเวลาหลายวัน ผู้ใช้ได้รับความเดือดร้อน บ่น และก่อวินาศกรรม การร้องเรียนไม่ได้หยุดลง แต่ฝ่ายบริหารได้รับมอบหมายให้ "ทำทุกอย่างเหมือนเดิม"
จะเริ่มตรงไหน? คุณต้องเข้าใจว่าแบบฟอร์มต่างกันอย่างไร ยกเลิกการโหลด ซอร์สโค้ดการกำหนดค่าด้วยพฤติกรรมการค้นหาใหม่และกับอันเก่า และเปรียบเทียบแหล่งที่มาของฟอร์ม
ฟังก์ชันการทำงานของการค้นหาข้อความแบบเต็มใหม่มีให้โดยการเพิ่มองค์ประกอบแบบฟอร์มด้วยประเภท "สตริงการค้นหา" ชัดเจนว่าจะต้องมองหาอะไร ฉันพบบทความเกี่ยวกับ ITS 7.3.1.5 ค้นหาในรายการแบบไดนามิก การศึกษาบทความนี้นำไปสู่ข้อสรุปว่าวิธีการทำงานของการค้นหาแบบใหม่ขึ้นอยู่กับปัจจัย 2 ประการ: 1. แบบฟอร์มจะต้องมีการเติมองค์ประกอบของแบบฟอร์มข้างต้น 2. รายการแบบไดนามิกบนแบบฟอร์มจะต้องมีคุณสมบัติ "SearchStringPosition" ไม่เท่ากับ "No"
ตามทฤษฎีแล้ว เมื่อสร้างแบบฟอร์มบนเซิร์ฟเวอร์ ก็เพียงพอที่จะกำหนดคุณสมบัติรายการ "SearchStringPosition" ให้กับค่า "SearchStringPosition.No" แต่การดำเนินการนี้ใช้ไม่ได้กับทุกรูปแบบ ในบางกรณี การค้นหาใหม่ยังคงทำงานต่อไป . เราไม่สามารถลบองค์ประกอบของฟอร์มที่ไม่ได้สร้างขึ้นโดยทางโปรแกรมโดยทางโปรแกรมได้ แต่เราสามารถควบคุมการมองเห็นได้ ถ้าการมองเห็นองค์ประกอบฟอร์ม "Add-onSearchString" ถูกเอาออก การค้นหาข้อความใหม่แบบเต็มก็หยุดทำงานเช่นกัน ในระหว่างการทดลอง เกิดโค้ดต่อไปนี้ ซึ่งฉันวางไว้ในโมดูลทั่วไป:
ขั้นตอนการปิดการใช้งานรายการส่งออก NewSearchInLists (แบบฟอร์ม) = Form.Elements.Find ("รายการ");
ถ้ารายการ = ไม่ได้กำหนดไว้ ให้ส่งคืน;
สิ้นสุดถ้า;
List.SearchStringPosition =SearchStringPosition.No;
AdditionSearchString = Form.Elements.Find("AdditionSearchString");
ถ้าไม่ใช่ SearchStringAddition = ไม่ได้กำหนด ดังนั้น SearchStringAddition.Visibility = False;
สิ้นสุดถ้า; สิ้นสุดขั้นตอน
คุณต้องส่งแบบฟอร์มที่แก้ไขแล้วไปยังขั้นตอน "ปิดใช้งานการค้นหาใหม่ในรายการ" แต่จะทำทุกรูปแบบพร้อมกันได้อย่างไร?
วิธีแก้ไขแรกคือแก้ไขแบบฟอร์มที่ต้องการในตัวกำหนดค่าด้วยตนเองโดยใช้ตัวแก้ไขแบบฟอร์ม ฉันละทิ้งโซลูชันนี้ทันที - มันยาวและน่าเบื่อ และเป็นการยากที่จะอัปเดตการกำหนดค่าในภายหลังช่วยให้คุณค้นหาข้อมูลที่ผู้ใช้ต้องการได้อย่างรวดเร็ว การค้นหาประเภทนี้จะมีประสิทธิภาพโดยเฉพาะอย่างยิ่งหากฐานข้อมูลมีข้อมูลจำนวนมาก และยังไม่ทราบแน่ชัดว่าข้อมูลที่น่าสนใจของผู้ใช้อยู่ที่ใด หรือไม่ทราบชื่อที่แน่นอน ซึ่งมักจะเกิดขึ้น หากต้องการเปิดหน้าต่างควบคุมการค้นหาข้อความแบบเต็ม คุณต้องดำเนินการดังต่อไปนี้: รายการเมนู การดำเนินงาน การควบคุมการค้นหาข้อความแบบเต็ม .
ในหน้าต่างนี้ คุณจะเห็นปุ่มสามปุ่ม: การตั้งค่า - เปิด/ปิดการค้นหาข้อความแบบเต็ม;
อัพเดตดัชนี – การสร้างดัชนี/การอัปเดตดัชนี ล้างดัชนี – รีเซ็ตดัชนี (แนะนำหลังจากอัปเดตข้อมูลทั้งหมด) ย่อหน้า อนุญาตให้รวมดัชนี – มีหน้าที่ในการรวมดัชนีหลักและดัชนีรอง
การค้นหาข้อความแบบเต็มดำเนินการโดยใช้ดัชนีข้อความแบบเต็ม หากไม่มีดัชนี การค้นหาข้อความแบบเต็มจะไม่สามารถทำได้ เพื่อให้การค้นหามีประสิทธิภาพ ข้อมูลที่เกี่ยวข้องทั้งหมดจะต้องรวมอยู่ในดัชนีข้อความแบบเต็ม หากผู้ใช้ป้อนข้อมูลใหม่ลงในฐานข้อมูล จะต้องรวมไว้ในดัชนีที่เป็นปัญหา มิฉะนั้นจะไม่มีส่วนร่วมในการค้นหา เพื่อหลีกเลี่ยงปัญหานี้ คุณจำเป็นต้องอัปเดตดัชนีข้อความแบบเต็ม เมื่อทำการอัพเดต ระบบจะวิเคราะห์เฉพาะข้อมูลบางประเภทเท่านั้น: สตริง ข้อมูลประเภทการอ้างอิง (ลิงค์เอกสาร หนังสืออ้างอิง) ตัวเลข วันที่ ค่าที่จัดเก็บ. หากผู้ใช้ไม่มีสิทธิ์ในการเข้าถึงข้อมูลบางอย่าง เขาจะไม่สามารถดูข้อมูลนั้นในผลการค้นหาได้ คุณควรจำไว้ว่าในคุณสมบัติของออบเจ็กต์ที่จะทำการค้นหาจะต้องตั้งค่าไว้ ค้นหาข้อความแบบเต็ม – การใช้งานซึ่งถูกกำหนดไว้เป็นค่าเริ่มต้น
สังเกตทรัพย์สินได้อย่างไร. ใช้ กำหนดไว้สำหรับไดเร็กทอรีทั้งหมด หมายเลขทะเบียน แต่สามารถทำได้สำหรับแอตทริบิวต์แต่ละประเภทในประเภทที่เกี่ยวข้อง
มาดูดัชนีข้อความแบบเต็มซึ่งประกอบด้วยสองส่วน (ดัชนี): ดัชนีหลักและเพิ่มเติม - ดัชนีหลักรับประกันความเร็วในการดึงข้อมูลสูง แต่การอัปเดตค่อนข้างช้าขึ้นอยู่กับปริมาณข้อมูล ดัชนีเพิ่มเติมอยู่ตรงกันข้าม ข้อมูลจะถูกเพิ่มเร็วขึ้นมาก แต่การค้นหาช้าลง ระบบค้นหาดัชนีทั้งสองพร้อมกัน ที่สุดข้อมูลอยู่ในดัชนีหลัก และข้อมูลที่เพิ่มเข้าสู่ระบบจะเข้าสู่ดัชนีเพิ่มเติม แม้ว่าปริมาณข้อมูลในดัชนีเพิ่มเติมจะมีน้อย แต่การค้นหาผ่านดัชนีนั้นค่อนข้างรวดเร็ว ในช่วงเวลาที่โหลดของระบบไม่มาก การดำเนินการผสานดัชนีจะเกิดขึ้น ซึ่งส่งผลให้ดัชนีเพิ่มเติมถูกล้าง และข้อมูลทั้งหมดจะถูกวางไว้ในดัชนีหลัก ขอแนะนำให้ดำเนินการรวมดัชนีในเวลาที่โหลดของระบบมีน้อยที่สุด เพื่อจุดประสงค์นี้ คุณสามารถสร้างงานที่ได้รับการควบคุมและงานที่จัดกำหนดการไว้ได้
ลองพิจารณากรณีของการอัปเดตดัชนีโดยอัตโนมัติเมื่อแอปพลิเคชันเริ่มทำงาน กรณีนี้เหมาะสำหรับฐานข้อมูลแบบผู้ใช้คนเดียว (เช่น ผลิตภัณฑ์เช่น พื้นฐานการบัญชี 1C, 1C แบบง่าย) ตั้งแต่เมื่อไหร่ ปริมาณมากผู้ใช้ การอัปเดตจะเกิดขึ้นหลังจากที่ผู้ใช้แต่ละรายเริ่มแอปพลิเคชัน ซึ่งจะส่งผลอย่างมากต่อประสิทธิภาพของระบบ
ขั้นแรก เรามาสร้างโมดูลทั่วไปและเรียกมันเป็นตัวอย่าง พีพี เราจะเขียนขั้นตอนต่อไปนี้:
ขั้นตอน UpdateIndices() ส่งออก
FulltextSearch.UpdateIndex();
สิ้นสุดขั้นตอน
มาตั้งค่าคุณสมบัติตามรูปกันด้วย
จากนั้นคลิกขวาที่ชื่อการกำหนดค่าในแผนผังการกำหนดค่าและดำเนินการคำสั่ง เปิดโมดูลแอปพลิเคชันที่ได้รับการจัดการ เลือกฟังก์ชันที่กำหนดไว้ล่วงหน้าในหน้าต่างเล็กๆ ด้านบน ก่อนเริ่มระบบ และใส่บรรทัดต่อไปนี้ลงในขั้นตอนนี้:
UpdateFullTextSearch.UpdateIndexes();
บันทึกการเปลี่ยนแปลงที่ทำ ด้วยวิธีนี้ หลังจากเปิดตัวแอปพลิเคชันแต่ละครั้ง ดัชนีจะได้รับการอัปเดตโดยอัตโนมัติ
ตอนนี้ลองพิจารณากรณีเมื่อมีผู้ใช้หลายคน ที่นี่เราจะใช้ งานประจำ (ในโหมดตัวกำหนดค่า: ในแผนผังการกำหนดค่า – ทั่วไป – งานปกติ)ในกรณีนี้ เราสนใจเพียงสองงานเท่านั้น: การอัปเดตดัชนีการค้นหาข้อความแบบเต็มและการรวมดัชนีการค้นหาข้อความแบบเต็มในคุณสมบัติของงานเหล่านี้ ให้เลือก กำหนดการและคลิกที่ลิงค์ เปิด.
เรากำหนดตารางเวลาสำหรับทั้งสองงาน ไม่มีคำแนะนำสำหรับการตั้งค่าในกรณีนี้ การตั้งค่าจะพิจารณาจากคุณลักษณะของระบบ (โหลด ปริมาณข้อมูล ความถี่ของการอัพเดต ฯลฯ) ตัวงานเองจะไม่ทำงาน เราจะต้องมีเซสชันของโปรแกรมที่ทำงานอยู่ในโหมด รัฐวิสาหกิจใครจะเป็นผู้รับผิดชอบในการทำงานเหล่านี้ให้เสร็จสิ้น ควรสังเกตทันทีว่าตัวเลือกนี้ใช้สำหรับระบบไฟล์ เซสชันนี้จะต้องเรียกใช้ตัวจัดการการรอที่ทำการเรียกเมธอดภาษาพื้นเมือง การประมวลผลนี้จะมีลักษณะเช่นนี้:
มาเปลี่ยนเป็นโหมด Enterprise แล้วทำสิ่งต่อไปนี้: มาเริ่มการประมวลผลของเรากันดีกว่า ซึ่งในกรณีนี้จะถูกเรียกทุกๆ 5 วินาที และในทางกลับกัน จะเรียกเมธอด “RunTaskProcessing()” วิธีนี้จะตรวจสอบว่าถึงเวลาที่ต้องดำเนินงานตามกำหนดเวลาหรือไม่ จากนั้นไปที่รายการเมนู การดำเนินการ – ค่าคงที่ – การตั้งค่าโปรแกรม – แท็บการแลกเปลี่ยนข้อมูล
มากำหนดเซสชันผู้ใช้ที่จะรับผิดชอบในการดำเนินการและกำหนดช่วงเวลาการโพลสำหรับงานประจำ ไม่แนะนำให้ทำงานในเซสชันนี้ เนื่องจากอาจส่งผลต่อประสิทธิภาพของระบบ นอกจากนี้บนดิสก์ ITS ยังมีการประมวลผล “ เรียกใช้งานประจำ” ซึ่งบังคับให้ทำงานประจำตามที่ผู้ใช้เลือก รูปแบบของการประมวลผลมีดังนี้:
ดังนั้นงานเตรียมการทั้งหมดจึงเสร็จสมบูรณ์และคุณสามารถดำเนินการค้นหาข้อมูลได้โดยตรง
ในการเริ่มทำงานกับการค้นหาข้อความแบบเต็ม คุณต้องรันคำสั่งต่อไปนี้: เมนู บริการและการค้นหาข้อมูล.
จากนั้นหน้าต่างต่อไปนี้จะปรากฏขึ้น:
คลิกที่ปุ่ม การตั้งค่าฟิลด์จะปรากฏขึ้นพร้อมกับการตั้งค่าเพิ่มเติม เช่น: การจำกัดพื้นที่การค้นหา, คลุมเครือ, ขนาดหน่วยบริโภค(ในกรณีนี้ ค่า = 5 ซึ่งหมายถึงการแสดงผลการค้นหาห้ารายการต่อหน้า) พารามิเตอร์ คลุมเครือบ่งบอกถึงความแตกต่างระหว่างอักขระบางตัวในคำค้นหาและข้อมูลที่ได้รับระหว่างการค้นหา คลุมเครือระบุเป็นเปอร์เซ็นต์
การค้นหาข้อความแบบเต็มสามารถใช้โอเปอเรเตอร์ต่อไปนี้:
นอกจากนี้ กลไกการค้นหาข้อความแบบเต็มช่วยให้สามารถเขียนส่วนหนึ่งของอักขระของคำภาษารัสเซียโดยใช้อักขระละตินแบบคีย์เดียว ผลการค้นหาจะไม่เปลี่ยนแปลง
ในเวอร์ชันไคลเอ็นต์-เซิร์ฟเวอร์ ตัวกำหนดเวลางานมีหน้าที่รับผิดชอบในการกำหนดเวลางาน
ตัวกำหนดเวลางานเป็นส่วนประกอบที่ใช้งานอยู่ของเซิร์ฟเวอร์เช่น ไม่ว่าจะมีการเชื่อมต่อไคลเอ็นต์กับเซิร์ฟเวอร์อยู่ก็ตาม ก็สามารถทำงานตามปกติได้ กิจกรรมของตัวกำหนดเวลาจะสังเกตเห็นได้ชัดเจนเป็นพิเศษ เมื่อมีการสอบถามฐานข้อมูลทั้งหมดตามลำดับว่ามีงานที่กำหนดเวลาไว้ในนั้นหรือไม่ ผู้จัดกำหนดการสามารถเลื่อนการสำรวจฐานข้อมูลเฉพาะได้ หากมีการกำหนดบล็อกการเชื่อมต่อหรือการบล็อกงานที่กำหนดเวลาไว้บนฐานข้อมูล
รายการงานที่กำหนดเวลาไว้ในปัจจุบันในตัวกำหนดตารางเวลาสามารถเปลี่ยนแปลงได้โดยอัตโนมัติ (เช่น เมื่อมีการสร้างงานที่กำหนดเวลาไว้ใหม่หรืองานที่กำหนดเวลาไว้ที่มีอยู่ถูกลบ) ไม่ว่าในกรณีใด กลไกงานจะทำให้แน่ใจว่ารายการงานที่กำหนดเวลาไว้ของผู้จัดกำหนดการเป็นข้อมูลล่าสุด และสอดคล้องกับรายการงานประจำของฐานข้อมูลคลัสเตอร์
หลังจากได้รับรายการงานที่กำหนดเวลาไว้เริ่มแรกเรียบร้อยแล้ว ผู้จัดกำหนดการจะตรวจสอบเป็นระยะๆ เพื่อดูว่าได้รับคำของานเบื้องหลังหรือไม่ และจำเป็นต้องดำเนินการงานที่กำหนดเวลาไว้ตามกำหนดเวลาหรือไม่ หลังจากที่กระบวนการของผู้ปฏิบัติงานได้รับงาน กระบวนการของผู้ปฏิบัติงานจะสร้างการเชื่อมต่อกับฐานข้อมูลและดำเนินงานภายในการเชื่อมต่อนั้น เนื่องจากเวิร์กโฟลว์ได้รับการปรับให้เหมาะสมสำหรับงานที่มีผู้ใช้หลายคน การสร้างการเชื่อมต่อกับฐานข้อมูลครั้งแรกเท่านั้นจึงมีค่าใช้จ่ายสูง การสร้างการเชื่อมต่อในภายหลังไปยังฐานข้อมูลเดียวกันจะใช้เวลาและทรัพยากรน้อยลงอย่างมาก เนื่องจาก โครงสร้างข้อมูลภายในส่วนใหญ่จะแชร์ระหว่างการเชื่อมต่อภายในฐานข้อมูลเดียวกัน หลังจากงานเสร็จสิ้น กระบวนการของผู้ปฏิบัติงานจะแจ้งผู้จัดกำหนดการว่างานเสร็จสมบูรณ์หรือไม่สำเร็จ ในกรณีที่ซอฟต์แวร์ขัดข้อง ตัวกำหนดเวลาสามารถรีสตาร์ทงานที่กำหนดเวลาไว้ได้ (หากเกิดความล้มเหลวขณะดำเนินการงานเบื้องหลัง ก็จะไม่สามารถรีสตาร์ทได้)
ขอบคุณ!
เครื่องมือค้นหาข้อความแบบเต็ม
ความสามารถในการค้นหาข้อความแบบเต็มขั้นพื้นฐาน
- รองรับการทับศัพท์ (การเขียนคำภาษารัสเซียโดยใช้อักขระละตินตาม GOST)
- รองรับการทดแทน (การเขียนส่วนหนึ่งของอักขระในคำภาษารัสเซียด้วยอักขระละตินแบบคีย์เดียว)
- ความเป็นไปได้ของการค้นหาแบบคลุมเครือ (ตัวอักษรในคำที่พบอาจแตกต่างกัน) โดยมีข้อบ่งชี้ถึงเกณฑ์คลุมเครือ
- ความสามารถในการระบุขอบเขตการค้นหาสำหรับออบเจ็กต์ข้อมูลเมตาที่เลือก
- การนำเสนอผลการค้นหาในรูปแบบ XML และ HTML พร้อมเน้นคำที่พบ
- การจัดทำดัชนีข้อความแบบเต็มของชื่อฟิลด์มาตรฐาน ("รหัส", "ชื่อ" ฯลฯ ) ในภาษาการกำหนดค่าทั้งหมด
- ทำการค้นหาโดยคำนึงถึงคำพ้องความหมายของรัสเซียอังกฤษและ ภาษายูเครน;
- พจนานุกรมทางสัณฐานวิทยาของภาษารัสเซียประกอบด้วยคำเฉพาะจำนวนหนึ่งที่เกี่ยวข้องกับพื้นที่ของกิจกรรมที่ทำงานอัตโนมัติโดยใช้ระบบโปรแกรม 1C:Enterprise
- ความเป็นไปได้ในการใช้งาน พจนานุกรมเพิ่มเติมค้นหาข้อความแบบเต็ม
- พจนานุกรมที่ให้มาประกอบด้วยฐานข้อมูลพจนานุกรมและพจนานุกรมอรรถาภิธานและคำพ้องความหมายของรัสเซีย ยูเครน และ ภาษาอังกฤษจัดทำโดย บริษัท "Informatik"
ค้นหาฐานข้อมูลข้อความแบบเต็ม
กลไกการค้นหาข้อความแบบเต็มในข้อมูลของระบบ 1C:Enterprise 8 ช่วยให้คุณสามารถค้นหาฐานข้อมูลที่ระบุตัวดำเนินการค้นหา (AND, OR, NOT, NEXT ฯลฯ )
กลไกการค้นหาข้อความแบบเต็มขึ้นอยู่กับการใช้สององค์ประกอบ:
- ดัชนีข้อความแบบเต็มที่สร้างขึ้นสำหรับฐานข้อมูลปัจจุบัน จากนั้นอัปเดตเป็นระยะตามความจำเป็น
- เครื่องมือค้นหาข้อความแบบเต็ม
การสร้างและอัปเดตดัชนีข้อความแบบเต็มสามารถทำได้แบบโต้ตอบในโหมด 1C:Enterprise 8 หรือโดยทางโปรแกรมโดยใช้ภาษาในตัว ด้านล่างนี้เป็นกล่องโต้ตอบสำหรับจัดการการจัดทำดัชนีข้อความแบบเต็มในโหมด 1C: Enterprise:
หากต้องการดำเนินการค้นหาข้อมูลในฐานข้อมูล สามารถใช้การประมวลผลการค้นหาข้อมูลที่แสดงด้านล่างนี้ได้
ในตัวอย่างที่นำเสนอพบเอกสารที่มีรายละเอียดประกอบด้วยค่าที่ขึ้นต้นด้วย "Kompl" และ "vent" - คู่สัญญา "Kompletk TD" และรายละเอียดที่มีคำว่า "เครื่องช่วยหายใจ" รูปแบบต่างๆ
ระบบ 1C:Enterprise 8 ช่วยให้สามารถเลือกรวมข้อมูลออบเจ็กต์แอปพลิเคชันและรายละเอียดในการค้นหาข้อความแบบเต็มได้ นอกจากนี้ยังสามารถจำกัดขอบเขตการค้นหาเฉพาะออบเจ็กต์การกำหนดค่าที่ระบุเท่านั้น
ค้นหาข้อความแบบเต็มในระบบวิธีใช้
ระบบวิธีใช้ 1C:Enterprise 8 ยังใช้การค้นหาข้อความแบบเต็ม ซึ่งช่วยให้คุณใช้โอเปอเรเตอร์การค้นหา AND, OR, NOT, NEXT เป็นต้น ในกรณีนี้ คำที่พบจะถูกเน้น
อินเตอร์เฟซซอฟต์แวร์
มีการใช้วัตถุแอปพลิเคชันต่อไปนี้:
- ตัวจัดการการค้นหาข้อความแบบเต็ม
- รายการค้นหาข้อความแบบเต็ม
- องค์ประกอบ FullTextSearchListElement
ตัวจัดการการค้นหาข้อความแบบเต็มมีวิธีในการสร้างดัชนีการค้นหา ตรวจสอบความเกี่ยวข้อง และยังสร้างรายการค้นหาประเภทรายการค้นหาข้อความแบบเต็มสำหรับการสืบค้นที่กำหนด
FullTextSearch Manager พร้อมใช้งานเป็นคุณสมบัติของบริบทสากลของ FullTextSearch
รายการ FullTextSearch ช่วยให้สามารถเข้าถึงผลการค้นหาได้ คุณยังสามารถระบุขอบเขตการค้นหาเป็นอาร์เรย์ขององค์ประกอบข้อมูลเมตาการกำหนดค่าได้
ผลลัพธ์การค้นหาคือ FullTextSearchListElement
ตัวดำเนินการสตริงการค้นหา
โอเปอเรเตอร์การค้นหาต่อไปนี้สามารถใช้ได้ในบรรทัดอินพุต:
และ (AND หรือ #) - ค้นหาข้อมูลที่มีคำทั้งหมด ตัวอย่าง: “บันทึกและเอกสาร” - รายละเอียดจะต้องมีทั้ง “ความประพฤติ” และ “เอกสาร” (โดยคำนึงถึงสัณฐานวิทยาของบัญชี)
หรือ (หรือหรือ | หรือ) - ค้นหาอย่างน้อยหนึ่งคำจากรายการ; ตัวอย่าง: “บันทึกหรือเอกสาร” - รายละเอียดต้องมีคำว่า “บันทึก” หรือ “เอกสาร” อย่างน้อยหนึ่งคำ
NOT (NOT หรือ ~) - ค้นหาข้อมูลที่มีรายละเอียดเป็นคำแรก แต่ไม่ใช่คำที่สอง ตัวอย่าง: "ปิดไม่ใช่เดือน" - ทุกอย่างที่มี "ปิด" แต่ไม่มีคำว่า "เดือน" จะถูกพบ ไม่อนุญาตให้ใช้ "~" ที่ต้นบรรทัด
NEAR/n (NEAR/[+/-]n) - ค้นหาข้อมูลที่มีคำที่ระบุในแอตทริบิวต์เดียว โดยคำนึงถึงสัณฐานวิทยาที่ระยะห่าง n คำระหว่างคำ
เครื่องหมายบ่งชี้ว่าคำที่สองจะถูกค้นหาจากคำแรกไปในทิศทางใด ("+" - หลังคำแรก "-" - ก่อนคำแรก)
หากไม่ได้ระบุเครื่องหมาย ก็จะพบข้อมูลที่มีคำที่ระบุ โดยห่างจากกัน n คำ
ลำดับของคำไม่สำคัญ
- “เครื่องเป่าผม NEAR/3 air” - ข้อมูลจะพบโดยที่ “อากาศ” เป็นคำไม่เกิน 3 คำก่อนหรือหลัง “เครื่องเป่าผม”;
- เครื่องเป่าผม NEAR/+3 air - ข้อมูลจะพบโดยที่ "air" ไม่เกิน 3 คำหลัง "hairdryer";
- เครื่องเป่าผม NEAR/-3 air - ข้อมูลจะพบโดยที่ "air" ไม่เกิน 3 คำ นำหน้า "hairdryer"
NEAR - ตัวดำเนินการระยะทางแบบง่าย: ทั้งสองคำอยู่ห่างจากกันไม่เกิน 8 คำ ตัวอย่าง: "ถือเอกสาร NEAR";
"" (ข้อความในเครื่องหมายคำพูด) - ค้นหาวลีที่แน่นอนโดยคำนึงถึงสัณฐานวิทยาของบัญชี ตัวอย่าง: "การโพสต์เอกสาร" - เทียบเท่ากับ: การโพสต์เอกสาร /1;
() - การจัดกลุ่มคำ (ระดับการซ้อนจำนวนเท่าใดก็ได้) ตัวอย่าง: "(การโพสต์ | คำสั่ง) # (บัญชี เอกสาร)";
* - ค้นหาโดยใช้ไวด์การ์ด (แทนที่ส่วนท้ายของคำ) ต้องป้อนอักขระที่มีนัยสำคัญมากกว่า 1 ตัว ตัวอย่าง: “doc*” - จะพบ “document”, “document”, “documentary” ฯลฯ;
# - ค้นหาคำแบบคลุมเครือโดยมีจำนวนความแตกต่างที่ระบุจากหมายเลขที่ระบุ (หากไม่ได้ระบุ = 1) ตัวอย่าง: แบบสอบถาม "#System" จะค้นหา "sistama", "sivtema"; แบบสอบถาม "System#2" จะพบ "sittama", "settema";
ค้นหาโดยคำนึงถึงคำพ้องความหมายในภาษารัสเซีย อังกฤษ และยูเครน - วางไว้หน้าคำที่เกี่ยวข้อง ตัวอย่าง: การค้นหา “!red Tile” จะพบ “Scarlet Tile” และ “Coral Tile” ด้วย
หากไม่มีการระบุตัวดำเนินการ (พิมพ์คำโดยคั่นด้วยช่องว่าง) โปรแกรมจะค้นหาคำทั้งหมดจากการสืบค้นโดยใช้ตัวดำเนินการ AND
ตัวอย่าง
ArrayMD = อาร์เรย์ใหม่(); ArrayMD.Add(Metadata.Directories.Products); ArrayMD.Add(Metadata.Documents.CashReceipt);
SearchList.SearchArea = ArrayMD; SearchList.SearchString = SearchInputField; SearchList.PortionSize = ขนาดสัดส่วน; SearchList.FirstPart();
ถ้า SearchList.FullQuantity() = 0 ดังนั้น ถ้า SearchList.TooManyResults() แล้ว Warning("มีผลลัพธ์มากเกินไป โปรดปรับแต่งคำค้นหาของคุณ");
สิ้นสุดถ้า;
กลับ; สิ้นสุดถ้า;
ปริมาณ = SearchList.FullQuantity();
HTMLStr = SearchList.GetDisplay(FullTextSearchDisplayType.HTMLText); รายงาน(StrHTML);
สำหรับแต่ละดัชนี = 0 โดย SearchList.Quantity-1 องค์ประกอบ Loop = SearchList.Get(index);
รายงาน(รายการดู); สิ้นสุดรอบ;
ลักษณะเฉพาะ
การค้นหาข้อความแบบเต็มทำงานได้ทั่วทั้งอาร์เรย์ข้อมูล ดังนั้นเมื่อใช้งาน คุณจะต้องส่งผลลัพธ์ผ่านตัวกรองความปลอดภัย
ตัวอย่างเช่น ในระบบหลายฐาน คุณต้องตัดอ็อบเจ็กต์ออกจากฐานข้อมูลอื่น
นอกจากนี้ การกรองดังกล่าวยังตัดกับการควบคุมการเข้าถึงอย่างใกล้ชิด เป็นที่ทราบกันดีว่ากลไกการค้นหามักเป็น "ช่องโหว่" ในการรักษาความปลอดภัย
ไม่ใช่นักบัญชีทุกคนที่รู้เกี่ยวกับเครื่องมือที่มีประโยชน์ใน 1C: การบัญชี 8 เป็นการค้นหาข้อความแบบเต็ม กลไกการค้นหาข้อความแบบเต็มช่วยให้คุณค้นหาข้อมูลข้อความได้ทุกที่ในการกำหนดค่าการค้นหาข้อความแบบเต็มดำเนินการโดยใช้การประมวลผล "การค้นหาข้อมูล" ซึ่งอยู่ในเมนู "เครื่องมือ":
มาดูตัวอย่างการทำงานของกลไกการค้นหาข้อความแบบเต็มกัน ตัวอย่างที่ 1สมมติว่าเราจำเป็นต้องค้นหาเอกสารเพื่อรับผลิตภัณฑ์บางอย่างอย่างรวดเร็ว เช่น บุหรี่ Marlboro
เลือก "ค้นหาข้อมูล" จากเมนู "บริการ" ในหน้าต่างที่เปิดขึ้น ให้ป้อนในช่องด้านบนองค์กรของเราเช่าสำนักงานจากศูนย์ธุรกิจ Rumyantsev คุณต้องค้นหาพระราชบัญญัติการเช่าสำหรับเดือนมีนาคม 2553 ในฐานข้อมูลอย่างรวดเร็ว มาสร้างคำค้นหาต่อไปนี้:
ตัวเลือกที่ 3สมมติว่าเมื่อจัดส่งสินค้าเราได้ทิ้งความคิดเห็นต่อไปนี้ไว้ในเอกสารบางฉบับ "การขายสินค้าและบริการ" - "การชำระเงินรอการตัดบัญชี" และเราจำเป็นต้องค้นหาเอกสารทั้งหมดที่จัดส่งด้วยความล่าช้า มาสร้างคำค้นหาต่อไปนี้:
คุณยังสามารถทำการค้นหาที่ซับซ้อนมากขึ้นได้โดยใช้โอเปอเรเตอร์การค้นหา (AND, OR, NOT, NEAR)
พื้นที่ค้นหาสามารถจำกัดเฉพาะออบเจ็กต์การกำหนดค่าเฉพาะ (เช่น เอกสาร "การรับสินค้าและบริการ") โดยคลิกปุ่ม "ตั้งค่า":
ช่องสำหรับเลือกวัตถุการกำหนดค่าจะปรากฏขึ้น ทำเครื่องหมายที่ช่อง "จำกัดพื้นที่การค้นหา" และคลิกปุ่ม "เลือกวัตถุข้อมูลเมตาที่จะค้นหา":
ตัวอย่างเช่น เลือกเอกสาร “การรับสินค้าและบริการ”
สิ่งที่เหลืออยู่คือการป้อนคำค้นหาและค้นหา
ส่วนล่างของการประมวลผลการค้นหาข้อมูลสะท้อนถึงความเกี่ยวข้องของดัชนี หากคุณเห็น "ดัชนีไม่เป็นปัจจุบัน" คุณต้องคลิกปุ่ม "อัปเดตดัชนี"