Na implementáciu procesu zrušenia (neplatnosti) dokumentu je potrebné postupovať nasledovne:
Spočiatku je postup rovnaký ako pri zaúčtovaní bežnej príjmovej dokladovej položky; dokumentáciu k tomuto postupu nájdete v časti Základný proces prenosu dokumentov.
Ak chcete označiť dokument ako neplatný (alebo zrušený) (povinné nastavenie v niektorých krajinách), musíte nastaviť nasledujúce vlastnosti.
Tieto vlastnosti nájdete v objekte dokumentu (RetailForce.Fiscalisation.Model.Document.Document)
- Nastavte vlastnosť cancellationDocument = true
- Pridajte odkaz na dokument pomocou vlastnosti documentReference
- Vráťte hodnotu dokumentu (zmeňte všetky hodnoty na záporné) vo vzťahu k zrušenému dokumentu (dokumentu, ktorý chcete zrušiť). To znamená, že ak má dokument, ktorý má byť zrušený, obrat 20 EUR, dokument o zrušení má obrat -20 EUR.
Ukážkový kód v jazyku C#:
public Document CancelDocument(TrustedFiscalModule fiscalModule, Document documentToCancel, string storeNumber, string terminalNumber)
{
// check parameter
if (fiscalModule == null) throw new ArgumentNullException(nameof(fiscalModule));
if (documentToCancel == null) throw new ArgumentNullException(nameof(documentToCancel));
// revert all values of the document (can also be done by pos software)
Document cancelDocument = fiscalModule.RevertDocument(documentToCancel);
// set CancellationDocument property to true
cancelDocument.CancellationDocument = true;
// now set document cancellation reference
cancelDocument.DocumentReference = new DocumentReference()
{
DocumentType = DocumentType.Receipt,
DocumentBookDate = documentToCancel.BookDate,
DocumentId = documentToCancel.DocumentId,
DocumentGuid = documentToCancel.DocumentGuid, // not necessary
ReferenceType = ReferenceType.Cancellation,
DocumentNumber = documentToCancel.DocumentNumber,
FiscalDocumentNumber = documentToCancel.FiscalDocumentNumber,
StoreNumber = storeNumber,
TerminalNumber = terminalNumber
};
cancelDocument.BookDate = DateTime.Now;
cancelDocument.DocumentGuid = Guid.NewGuid();
cancelDocument.DocumentId = "NEWID";
cancelDocument.DocumentNumber = "NEWNUMBER";
return cancelDocument;
}
Podrobné informácie o modele objektov dokumentov nájdete v dokumentácii k modelu objektov dokumentov.
Tento článok bol preložený automaticky.
Príspevky
0 komentárov
Ak chcete napísať komentár, prihlásiť sa.