Kā automātiski izrakstīt un validēt batch rēķinu datus

Kā automātiski izrakstīt un validēt batch rēķinu datus

Automātiskā rēķina datu ekstrakcija skalā palīdz finansēšanas komandām samazināt manuālo pūliņu, paātrināt maksājamo kontu un minimalizēt kļūdas. Aspose.OCR Invoice to Text for .NET virzās no skenētu vai fotografētu rakstiem - pat kopumā.

Reālā pasaules problēma

Manuālais datu ievads simtiem vai tūkstošiem rēķinu ir lēns, dārgs, un kļūdas izraisītas. kļūdās kopumā, datumi, vai piegādātāji rada problēmas zemā līmenī finanšu sistēmās un atbilstības.

Risinājumu pārskats

Apkopo rēķinu mapes, izņem un validē strukturētus datus (piemēram, kopējais, piegādātājs, datums) un eksporta rezultātus ERP importam vai pārskatīšanai - visi ar augstu precizitāti.

Prerequisites

  • Visual Studio 2019 vai vēlāk
  • .NET 6.0 vai jaunāks (vai .Net Framework 4.6.2+)
  • Aspose.OCR par .NET no NuGet
  • Skanētu vai fotografētu rēķinu attēlu mapes (JPG, PNG, PDF)
PM> Install-Package Aspose.OCR

Step-by-step īstenošana

1. solis: sagatavojiet rēķinu komplektu

string[] invoiceFiles = Directory.GetFiles("./invoices", "*.pdf"); // or *.jpg, *.png

2. solis: Iestatīt rēķinu atpazīšanu un validāciju

using Aspose.OCR;
List<string> errors = new List<string>();
InvoiceRecognitionSettings settings = new InvoiceRecognitionSettings();
settings.Language = Language.English;
AsposeOcr ocr = new AsposeOcr();

3. solis: apstrādā katru rēķinu, ekstraktu un validētu

using (var writer = new StreamWriter("invoice_results.csv"))
{
    writer.WriteLine("File,Vendor,Date,Total,Status,Error");
    foreach (var file in invoiceFiles)
    {
        try
        {
            OcrInput input = new OcrInput(InputType.SingleImage);
            input.Add(file);
            var results = ocr.RecognizeInvoice(input, settings);
            var text = results[0].RecognitionText;
            // Example: Extract fields with regex or parsing
            string vendor = ExtractField(text, "Vendor:");
            string date = ExtractField(text, "Date:");
            string total = ExtractField(text, "Total:");
            bool valid = ValidateInvoiceData(vendor, date, total);
            writer.WriteLine($"{file},{vendor},{date},{total},{(valid ? "Valid" : "Invalid")},");
        }
        catch (Exception ex)
        {
            writer.WriteLine($"{file},,,,Error,{ex.Message}");
        }
    }
}
// Helper methods to extract and validate fields (simplified)
string ExtractField(string text, string fieldName)
{
    // Implement regex or logic to extract field from text
    return ""; // Example stub
}
bool ValidateInvoiceData(string vendor, string date, string total)
{
    // Implement checks for expected formats, totals, required fields
    return !string.IsNullOrEmpty(vendor) && !string.IsNullOrEmpty(date) && !string.IsNullOrEmpty(total);
}

4. solis: Eksporta/integrācijas rezultāti

  • Izmantojiet CSV, lai pārskatītu, importētu ERP / grāmatvedības vai turpmāku automatizāciju

Izmantojiet gadījumus un pieteikumus

Maksājamā konta automatizācija

Pārstrādā un validē lielus piegādātāja rēķinus savlaicīgai maksāšanai.

ERP / finanšu integrācija

Ievadiet apstiprinātos rēķinu datus ERP vai grāmatvedības sistēmās, lai vienkāršotu darbības.

Revīzija un atbilstība

Saglabājiet detalizētus logus un kļūdu ziņojumus par katru apstrādāto rēķinu komplektu.

Kopīgi izaicinājumi un risinājumi

1. uzdevums: dažādi rēķinu formāti

Lēmums: Tune regex, lauka ekstrakcija un OCR iestatījumi pēc piegādātāja/templāta.

2. izaicinājums: kļūdas skanēs vai attēlos

Lēmums: Izmantojiet iepriekš apstrādātus filtrus, pieprasīt labāku kvalitāti un zīmi pārskatīšanai.

3. izaicinājums: pazudušie vai nepilnīgi lauki

Lēmums: Validējiet un ziņojiet par pazudušiem/nevalidītiem laukiem cilvēka pārskatīšanai.

Darbības apsvērumi

  • Batch darbavietas var darboties stundas — grafiks off-hours
  • Pārrauga kļūdu rādītājus un manuāli pārskata neesošos rezultātus

Labākās prakses

  • Test batch darbus uz mazu paraugu vispirms
  • Regulāra pārbaude un tune ekstrakcijas/validācijas loģika
  • Visu kļūdu un panākumu ieraksts
  • Apstiprināt ieejas un iznākumu datus revīzijai

Augstākie scenāriji

1. scenārijs: paralēli batšu apstrāde

Izmantojiet Parallel.ForEach vai async uzdevumus ļoti lieliem rēķinu komplektiem.

2. scenārijs: automatizēti kļūdu paziņojumi

Sūtiet e-pastu / brīdinājumus, ja validācija neveiksmīgi vai kļūdas spike.

Conclusion

Aspose.OCR Invoice to Text for .NET ir ideāls rēķinu automatizācijai, palīdzot finanšu komandām precīzi skalēt, validēt un integrēt faktūras datus.

Atrodiet uzlabotu integrāciju un parsing padomus Aspose.OCR par .NET API atsauci .

 Latviski