💡 ตัวอย่างการทำงานเต็มที่พร้อมใช้งานบน GitHub:
metadata-diff-doc-versions-using-groupdocs-metadata-nodejs

บทนำ

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

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

ทำไมเมตาดาต้าแบบซ่อนเร้นจึงสำคัญสำหรับทีมกฎหมาย

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

โซลูชันของเราด้วย GroupDocs.Metadata

GroupDocs.Metadata สำหรับ Node.js ให้ API เดียวที่สกัดคุณสมบัติที่รองรับทั้งหมด, เปรียบเทียบสองรุ่น, และสร้างรายงาน diff ที่มีโครงสร้าง SDK รองรับ DOCX, PDF, XLSX, และรูปแบบอื่น ๆ อีกมากมายโดยไม่ต้องเขียนพาร์เซอร์เฉพาะสำหรับแต่ละประเภทไฟล์

ขั้นตอน 1 – ดึงเมตาดาต้าทั้งหมดจากเอกสาร

ตัวช่วยด้านล่างเปิดไฟล์, เดินทางผ่านต้นไม้ของคุณสมบัติทั้งหมด, และคืนแผนที่ JavaScript ธรรมดาแบบ ชื่อคุณสมบัติ → ค่า ใช้ AnySpecification เพื่อจับฟิลด์ในตัวและฟิลด์ที่กำหนดเอง

/** Extract all metadata from a file */
function extractAllMetadata(documentPath) {
  const result = {};
  const metadata = new groupdocs.Metadata(documentPath);
  try {
    const properties = metadata.findProperties(new groupdocs.AnySpecification());
    for (let i = 0; i < properties