برنامه نویسی

چگونه انبوه اسناد را دیجیتالی کردم 🧻

https%3A%2F%2Fdev to uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhhn9o6qkplqs0lsm8uucدر این مقاله به شما نشان خواهم داد که چگونه انبوه اسناد را با کمک DMS Paperless و چند ترفند دیجیتالی کردم 🚀


اول از همه: متأسفانه هنوز دستمال توالت دیجیتالی نمی شود، اما من می توانم در بقیه موارد به شما کمک کنم! توالت های بدون کاغذ نیز وجود دارد. اما این موضوع دیگری است.

فاکتورها، قراردادها، یادداشت ها – همه چیز انباشته می شود و هنگامی که به سند نیاز دارید، برای همیشه جستجو می کنید. آشفتگی کاغذ معمولی می تواند واقعا آزاردهنده باشد. راه حل؟ سیستم مدیریت اسناد (DMS)! و با بدون کاغذ، یک اسکنر اسناد و پچ T-Sides شما نه تنها می توانید اسناد خود را به طور موثر دیجیتالی کنید، بلکه آنها را به طور خودکار مرتب کنید. خوب به نظر می رسد؟ سپس من به شما نشان خواهم داد که چگونه همه چیز را تنظیم کنید! 💪

در مقاله دیگری مزایای DMS Paperless و چرایی نیاز به آن را برای شما توضیح دادم:

پیش نمایش تصویر

تصمیمات سال نو 🥳

حالا می خواستم تمام(!) مدارکم را در تعطیلات دیجیتالی کنم. واقعا همه من فقط بعداً متوجه شدم که در چه چیزی افتاده بودم.

نامزد من برای یک مقام آلمانی کار می کند، بنابراین همه چیز به طور مرتب در پوشه های لایتز بر اساس شخص، موضوع و تاریخ مرتب شده بود، و همچنین درج های کوچکی وجود داشت. در صورت لزوم با مشت زدن و منگنه زدن دقیق. اما بعد از 12 سال رابطه خوب، پوشه ها خیلی زیاد می شوند.

بسیاری از آن حتی لازم نیست برداشته شوند. من تخمین می زنم که شما فقط باید 10٪ از اسناد روزمره خود را نگه دارید. این شامل تمام اسناد مقامات، اعلامیه ها، قراردادها و به طور کلی همه چیز از یک نهاد رسمی است (مسائل اسناد رسمی، عصاره ثبت زمین و غیره). اگر اظهارنامه مالیاتی ارسال می کنید، البته همه چیزهایی که در آن گنجانده شده است (فاکتورهای هزینه های تجاری، احتمالاً گواهی پرداخت مانند صورت حساب بانکی).

حالا من آنجا ایستاده ام با چیزی شبیه به 100 پوشه که باید آنها را دیجیتالی کنم. فوو

مطمئناً می توانید همه کارها را به صورت دستی یا با یک برنامه بدون کاغذ انجام دهید، اما این نه تنها آزاردهنده است، بلکه به طرز غم انگیزی ناکارآمد است. به هر حال، من کارهای بهتری با وقتم دارم تا ساعت ها وقت گذاشتن برای ورق زدن و عکس گرفتن با تلفن همراهم. بنابراین نیاز زیادی به بهینه سازی وجود دارد.

اما ناامیدی به سرعت پیش آمد 🥱

بین سال‌ها چاپگر من هم خراب شد، به همین دلیل به دنبال یک جایگزین خوب بودم که از طریق فیدر و در حالت ایده‌آل حتی از هر دو طرف اسکن کند. اما از آنجایی که ما الان آنقدر چاپ نمی کنیم، نمی خواستم 600 یورو خرج کنم، زیرا چنین دستگاه هایی بیشتر در بخش حرفه ای یافت می شوند و اینجاست که اوضاع تند می شود.

اما فقط می تواند ADF (تغذیه کننده خودکار اسناد) و نه DADF (تغذیه کننده خودکار اسناد دوبلکس) را انجام دهد و بنابراین اسکن صدها سند بسیار زمان بر خواهد بود. آنجا بودم، این کار را انجام دادم. بنابراین به HP OfficeJet Pro 8123e تبدیل شد، صرفاً برای چاپ.

پیش نمایش تصویر

این برای اسناد جداگانه خوب است، اما برای تعداد زیاد یا دیجیتالی شدن اولیه، چیزی نیست.

اسکنر اسناد برای برد 🏆

البته من قبلاً اسکنرهای اسناد را از محیط حرفه ای خود می شناختم. آنها این مزیت بزرگ را دارند که دقیقاً برای این کارها تخصص دارند و احتمالاً می توانند آنها را بهتر از هر چاپگر چندکاره مصرفی انجام دهند.

پیش نمایش تصویر

اگر فقط یک نسخه سطح ابتدایی را انتخاب نکنید، دقیقاً نیازهای من را برآورده می کند:

  • تغذیه سریع و اتوماتیک (دسته ای).
  • اسکن دوبلکس
  • تشخیص صفحه خالی
  • تشخیص دو برگه (تشخیص می دهد زمانی که بیش از یک صفحه تغذیه می شود)
  • اسکن فرمت های مختلف (رسید، رسید، رسید و …)
  • ذخیره سازی اسکن ها در یک اشتراک شبکه از طریق WLAN یا LAN#
  • قابل استفاده به تنهایی (کامپیوتر یا تلفن همراه)
  • اختیاری: OCR داخلی

بعد از تحقیق، یکی را انتخاب کردم اسکن اسنپ iX1600 آگاه شد و بلافاصله آن را برداشت.

پیش نمایش تصویر

اسکنر اسناد را به Paperless وصل کنید

از آنجایی که Paperless، همانطور که در مقاله دیگر ذکر شد، گزینه اسکن اسناد از یک پوشه را نیز دارد، می‌توانید اسکن اسکنر را مستقیماً در پوشه قرار دهید، که سپس می‌تواند توسط Paperless اسکن شود.

پیش نمایش تصویر

تنها کاری که باید انجام دهید این است که سفارش مصرف را در شبکه منتشر کنید و آن را به ScanSnap اعلام کنید. برای این کار حداقل در این مدل می توانید در نرم افزار (نه روی خود دستگاه) پروفایل ایجاد کنید. آنها کاملاً جامع هستند و در واقع باید همه چیزهایی را که به عنوان یک دیجیتایزر نیمه حرفه ای برای خانه خود نیاز دارید ارائه دهند. در اینجا نمایه من برای ذخیره سازی مستقیم در اشتراک شبکه بدون کاغذ است:

https%3A%2F%2Fdev to

مهمترین چیز در اینجا تنظیماتی است که آن را اسکن دوطرفه می کند و آن را به عنوان PDF در یک اشتراک شبکه ذخیره می کند تا Paperless بتواند آن را مدیریت کند. سپس نمایه در نرم افزار و دستگاه ذخیره می شود و می توان مستقیماً حتی بدون رایانه یا تلفن همراه از آن استفاده کرد.

اکنون احتمالاً این سؤال را از خود می‌پرسید:

بله.

بله این کار می کند. حتی ساده تر از حد انتظار. 👇🏼

اسکن دسته ای را به فایل های پی دی اف جداگانه جدا کنید 📖

بدون کاغذ در حال حاضر می تواند این کار را انجام دهد و یک استاندارد صنعتی نیز برای این کار وجود دارد.

پیش نمایش تصویر

این PATCH(-T) نامیده می شود. این فقط یک صفحه جداکننده است که دارای بارکد است. اگر Paperless این صفحه را شناسایی کند، اسناد را به PDF جداگانه جدا می کند. چنین صفحه PATCH-T به شکل زیر است:

https%3A%2F%2Fdev to

به راحتی می توانید آن را از اینجا دانلود کنید:

PATCH-T-for-printing-on-a4-paperPATCH-T-for-printing-on-a4-paper.pdf96 KBdownload-circle

اما متاسفانه اینطور نبود. ابتدا باید قابلیت تشخیص را در Paperless فعال کنید. اما انجام این کار با استفاده از متغیرهای محیطی بسیار آسان است (اگر Paperless را در Docker میزبانی کنید):

PAPERLESS_CONSUMER_ENABLE_BARCODES: true
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

بس است. اما تو میتونی با من بیای PAPERLESS_CONSUMER_BARCODE_STRING همچنین رشته های خود را تعریف کنید. این مستند می گوید:

اسکن و جداسازی صفحات را بر اساس بارکدهای شناسایی شده فعال می کند. این امکان اسکن و افزودن چندین سند در هر فایل آپلود شده را فراهم می کند که با یک یا چند صفحه بارکد از هم جدا شده اند. برای سهولت استفاده، پیشنهاد می شود از یک صفحه جداسازی استاندارد استفاده کنید، به عنوان مثال در اینجا. اگر هیچ بارکدی در فایل آپلود شده شناسایی نشود، جداسازی صفحه اتفاق نمی افتد. سند اصلی حذف می شود و صفحات جدا شده به صورت pdf ذخیره می شوند. اطلاعات اضافی را در اسناد استفاده پیشرفته مشاهده کنید. پیش فرض به نادرست.

پیش نمایش تصویر

بنابراین در متن ساده به این معنی است:

شما به دنبال دسته‌ای از اسناد می‌گردید، هر سند را با یک صفحه PATCH-T از هم جدا می‌کنید و Paperless بقیه را انجام می‌دهد. برای این کار، باید این صفحه PATCH-T را چند بار چاپ کنید.

اسناد دقیقاً در محل صفحه PATCH-T جدا شده و در PDF های جداگانه ذخیره می شوند و بر اساس آن ویرایش و پردازش می شوند. نگران نباشید، صفحات PATCH-T به اسکن شما ختم نمی شوند، بدون کاغذ آنها را به خوبی مرتب می کند.

صفحات خالی یک مشکل هستند 🪹

بعد از اینکه اولین دسته (تقریبا 30 سند) را اسکن کردم، بیشتر و بیشتر متوجه شدم که تشخیص صفحات خالی توسط ScanSnap به خوبی کار می کند، اما نه همیشه. این ظاهراً با این واقعیت ارتباط دارد که صفحات PATCH-T که من در ابتدا چاپ کردم البته فقط در یک طرف چاپ شده بودند. در نتیجه، گاهی اوقات پیش می‌آید که سند پس از صفحه PATCH-T با یک صفحه خالی شروع شده است. این عمدتاً صفحاتی را تحت تأثیر قرار می‌دهد که کاملاً تمیز نبودند و احتمالاً از آستانه سفید فراتر رفته بودند، به طوری که ScanSnap فکر کرد “هی، چیزی در آنجا هست، من هم آن را اسکن خواهم کرد”.

اما یک راه حل کاملاً بدون کاغذ نیز برای این کار وجود دارد. اینجاست که اسکریپت های PreConsume وارد عمل می شوند.

پیش نمایش تصویر

این به شما امکان می دهد در فرآیند پردازش مداخله کنید و کارها را انجام دهید، در این مورد اسکریپتی که صفحات خالی را بر اساس مقدار آستانه شناسایی و مرتب می کند.

برای این کار، مسیر یک اسکریپت را به عنوان یک متغیر محیطی تعریف می کنید

PAPERLESS_PRE_CONSUME_SCRIPT: /usr/src/paperless/scripts/pre-consume.sh
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

اسکریپت وجود دارد فقط یک فایل جمعی برای همه اسکریپت ها به طوری که دیگر مجبور نباشم ظرف را تطبیق دهم. این اسکریپت فقط اسکریپت های دیگر را ادغام می کند:

#!/bin/sh
set -x

# Remove blank pages
/usr/src/paperless/scripts/remove-blank-pages.sh
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

چیز واقعا هیجان انگیز این است remove-blank-pages.sh-اسکریپت:

#!/bin/bash
#set -x -e -o pipefail
set -e -o pipefail
export LC_ALL=C

#IN="$1"
IN="$DOCUMENT_WORKING_PATH"

# Check for PDF format
TYPE=$(file -b "$IN")

if [ "${TYPE%%,*}" != "PDF document" ]; then
  >&2 echo "Skipping $IN - non PDF [$TYPE]."
  exit 0
fi

# PDF file - proceed

#PAGES=$(pdfinfo "$IN" | grep ^Pages: | tr -dc '0-9')
PAGES=$(pdfinfo "$IN" | awk '/Pages:/ {print $2}')

>&2 echo Total pages $PAGES


# Threshold for HP scanners
# THRESHOLD=1
# Threshold for Canon MX925
THRESHOLD=1  


non_blank() {
  for i in $(seq 1 $PAGES) ; do
    PERCENT=$(gs -o -  -dFirstPage=${i} -dLastPage=${i} -sDEVICE=ink_cov "${IN}" | grep CMYK | nawk 'BEGIN { sum=0; } {sum += $1 + $2 + $3 + $4;} END {  printf "%.5f\n", sum } ')
    >&2 echo -n "Color-sum in page $i is $PERCENT: "
    if awk "BEGIN { exit !($PERCENT > $THRESHOLD) }"; then
      echo $i
      >&2 echo "Page added to document"
    else
      >&2 echo "Page removed from document"
    fi
  done
}

NON_BLANK=$(non_blank)

if [ -n "$NON_BLANK" ]; then
  NON_BLANK=$(echo $NON_BLANK  | tr ' ' ",")
  qpdf "$IN" --replace-input --pages . $NON_BLANK --
fi
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

💡 فیلمنامه روی مزخرفات من رشد نکرد، اعتبار آن به دیگران می رسد، اما تا به حال با آن به نتایج خوبی رسیده ام.

پیش نمایش تصویر

⚠️

شما نباید از اسکریپت مستقیماً سازنده استفاده کنید. اکیداً توصیه می‌کنم یک صفحه خالی را از قبل اسکن کنید و آستانه چاپگر خود را تنظیم کنید، در غیر این صورت ممکن است “اثبات نادرست” رخ دهد و صفحات ارزشمند از بین بروند.

و اگر چند نفر باشند؟ 🧑🏼‍👩🏼‍👧🏼

Paperless برای این مورد نیز راه حلی دارد. Paperless می تواند به صورت بازگشتی از پوشه Consume عبور کند، یعنی در زیر پوشه ها نیز جستجو کند. و از آن برای اعمال مستقیم تگ ها یا مالکان استفاده کنید. برای این کار فقط باید متغیر محیط را تنظیم کنید PAPERLESS_CONSUMER_RECURSIVEآن را فعال کنید، پوشه های مختلف را در آنجا قرار دهید (مثلاً نام افرادی که اسناد را دریافت می کنند) و سپس یک گردش کار در Paperless ایجاد کنید. همچنین می توانید نام دایرکتوری ها را به صورت خودکار به عنوان برچسب (با استفاده از متغیر محیطی) ایجاد کنید PAPERLESS_CONSUMER_SUBDIRS_AS_TAGS و سپس گردش کار را در بالای آن قرار دهم، اما من این را نمی خواستم.

سپس می‌توانید از گردش‌های کاری برای قرار دادن «اتوماسیون» در مسیر استفاده کنید:

https%3A%2F%2Fdev to uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fefqe2u8kiqped9l8zois

https%3A%2F%2Fdev to

و من به نمایه اسکنر اسناد اجازه دادم دقیقاً در همان مسیر اسکن کند. برای نامزدم هم پروفایل و گردش کار درست کردم. اگر اکنون اسنادم را اسکن کنم، نمایه خود را انتخاب می‌کنم و به هر چیزی که در پوشه است به طور خودکار یک مالک داده می‌شود و به صورت اختیاری برچسب‌ها و سایر تکالیف داده می‌شود. همون بازی با اسناد نامزدم، فقط تو یه پوشه اشتراک فایل دیگه.

از آنجایی که می توانید با regex کار کنید، می توانید پرس و جوهای بسیار سخاوتمندانه و دقیق ایجاد کنید.

پیش نمایش تصویر

ولی یه مشکلی هست🥴

اگر اسکن دسته ای از طریق صفحات PATCH-T اجرا شود، این گردش کار اجرا نمی شود و صفحات باید به طور خودکار از هم جدا شوند. ظاهراً به نظر نمی رسد که این یک اشکال باشد، اما حداقل در حال حاضر، “با عمد ساخته شده است”. من یک بار این را به عنوان یک باگ با Paperless گزارش کردم:

پیش نمایش تصویر

پس این برای شما معنی دارد: پس از آن بسیاری از اسناد باید به صورت دستی با مالکان یا برچسب های اضافی برچسب گذاری شوند، اما اسکن های فردی بدون هیچ مشکلی کار می کنند، بنابراین حداقل اسکن فردی نباید مشکلی در جریان کار ایجاد کند.

اما من با اسکن کردن تمام اسناد به صورت دسته‌ای، جدا شده توسط شخص، علامت‌گذاری آنها با اسکن چندگانه در Paperless و اختصاص دادن کاربران به خودم کمک کردم. تا الان گردش کار بهتری پیدا نکردم.

تنها نکته مهم این است که اسناد را به صورت خودکار تگ کنید ungeprüftیا todoآنها را زمین بگذارید تا بتوانید بعداً دوباره آنها را پیدا کنید.

گردش کار کار را از دستان شما دور می کند 🧑🏼‍🏭

به طور کلی، گردش کار ارزش وزن خود را در طلا دارد. به عنوان مثال، من یک گردش کار ایجاد کردم که به انواع و برچسب های سند خاص واکنش نشان می دهد و تگ دیگری اضافه می کند. این به من این امکان را می دهد که طبقه بندی کنم که آیا یک سند می تواند برای اهداف مالیاتی مرتبط باشد یا خیر و سپس در پایان سال می توانم آن را با استفاده از نمای سفارشی به یک سال کاهش دهم و همه آنچه را که باید در اظهارنامه مالیاتی آتی خود لحاظ کنم را ببینم.

https%3A%2F%2Fdev to uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa0r0d6923yj9kus3vm68

https%3A%2F%2Fdev to uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdcopojws8pju605yokgg

پوشه بای 👋🏼

با تمام سفارشی‌سازی‌ها یا گردش‌های کاری، اکنون می‌توانم تمام اسنادم را یک بار دیجیتالی کنم و همه پوشه‌ها را در سطل زباله بیاندازم. در اصل، من می توانم تمام اسناد دیجیتالی شده را تا زمانی که مجبور نباشم آنها را نگه دارم، خرد کنم.

از آنجایی که این قطعا پوشه های شما را بسیار شلوغ می کند، اکنون می توانید از آن استفاده کنید ASN استفاده در Paperless را ASN (شماره سریال بایگانی) اساساً شماره آرشیو یک سند است تا بتوان به سرعت دوباره به صورت فیزیکی مکان یابی کرد. هر سند به طور خودکار یکی را دریافت می کند و همچنین می تواند در صورت لزوم به طور متفاوتی اختصاص داده شود. بنابراین شما می توانید تمام اسناد فیزیکی را که نباید تعدادشان زیاد باشد، با این ASN (مهم بودن یا برچسب زدن آنها مهم نیست) مجهز کنید و سپس آنها را در یک پوشه ذخیره کنید. با درج‌ها می‌توانید نظم خاصی بیاورید و مدارک را به صورت موضوعی مشخص کنید.

این بدان معناست که شما می توانید اسناد فیزیکی خود را به سرعت و با اطمینان در صورت نیاز پیدا کنید و نیازی به جستجوی زیاد آنها ندارید.

من در حال حاضر از این فرآیند استفاده نمی کنم، اما در واقع به معرفی آن در مقطعی فکر می کنم. در حال حاضر من هنوز آماده نیستم تمام اسناد را خرد کنم.

بدون نیاز به اسکنر اسناد 🫰🏼

همانطور که بعداً متوجه شدم، اسکنر اسناد در اصل ضروری نبود، زیرا Paperless همچنین می تواند به طور خودکار اسناد را با استفاده از اسکن یک طرفه ترکیب کند. متغیر محیطی برای همین است PAPERLESS_CONSUMER_ENABLE_COLLATE_DOUBLE_SIDED. این به شما این امکان را می دهد که ابتدا تمام صفحات زوج را اسکن و بایگانی کنید و سپس پشته را برگردانید و تمام صفحات فرد بدون کاغذ را بایگانی کنید و سپس تشخیص دهد که آنها به یکدیگر تعلق دارند و آنها را در یک PDF ترکیب می کند. فرآیند و مشکلات آن در مستندات Paperless توضیح داده شده است:

پیش نمایش تصویر

این بدان معناست که شما نیازی به یک اسکنر گران قیمت با اسکن DADF ندارید، همچنین می توانید از یک چاپگر معمولی با اسکن ADF استفاده کنید. اما مستندات همچنین توضیح می‌دهند که این فرآیند می‌تواند کاملاً مستعد خطا باشد و من نمی‌خواستم تمام اسناد اسکن شده را بررسی کنم. راه حل با اسکنر اسناد در واقع ارزش پول را داشت زیرا باعث نجات من از سردردهای احتمالی شد.

نتیجه گیری 💡

همانطور که می بینید، ذخیره سریع و کارآمد تمام اسناد قبلی خود در Paperless و پردازش آنها (تقریبا) کاملاً خودکار بسیار آسان است. در برخی از نقاط شما هنوز باید چیزی را در Paperless دوباره کار کنید یا به راه حل های ساده بسنده کنید. اما همه چیز بهتر از اسکن همه چیز به صورت دستی است و شما به سرعت وضعیتی را دریافت می کنید که می توانید با آن به کار خود ادامه دهید.

بنابراین من توانستم تقریباً 4 پوشه لایتز را با تقریباً 700 سند در 3 شب اسکن کنم. چه چیزی بیشتر می توانید بخواهید؟


اگر پست‌های من را دوست دارید، خوب است اگر وبلاگ من را برای مطالب فنی بیشتر دنبال کنید.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا