Procedura-GetDocumentInfo

Parametry:

NázevPopisDatový typ
AdocumenttypeChar(2)
Adocument_IdChar(10)

Návratové hodnoty:

NázevPopisDatový typ
TextVarChar(100)
DocumentdisplaynameVarChar(24)
RealcreditChar(1)
AscreditChar(1)
Sort_DocumentdisplaynameChar(28)

Závislosti:

NázevPopisTřída
GetDocumentInfoPosProcedures
GetDocumentInfoWageProcedures

Tělo:

begin
  Text = '';
  DocumentDisplayName = '';
  IF (ADocumentType = '01') THEN BEGIN
    RealCredit = 'A';
    AsCredit = 'A';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM OtherIncomes A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '02') THEN BEGIN
    RealCredit = 'N';
    AsCredit = 'N';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM OtherExpenses A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '03') THEN BEGIN
    RealCredit = 'A';
    AsCredit = 'A';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM IssuedInvoices A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :TEXT, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '04') THEN BEGIN
    RealCredit = 'N';
    AsCredit = 'N';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM ReceivedInvoices A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '17') THEN BEGIN
    RealCredit = 'A';
    AsCredit = 'A';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM PenaltyInvoices A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '60') THEN BEGIN
    RealCredit = 'N';
    AsCredit = 'A';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM IssuedCreditNotes A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '61') THEN BEGIN
    RealCredit = 'A';
    AsCredit = 'N';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM ReceivedCreditNotes A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '62') THEN BEGIN
    RealCredit = 'A';
    AsCredit = 'A';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM VATIssuedDInvoices A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :TEXT, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '63') THEN BEGIN
    RealCredit = 'N';
    AsCredit = 'A';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM VATIssuedDCreditNotes A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :TEXT, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '64') THEN BEGIN
    RealCredit = 'N';
    AsCredit = 'N';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM VATReceivedDInvoices A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :TEXT, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '65') THEN BEGIN
    RealCredit = 'A';
    AsCredit = 'N';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM VATIssuedDCreditNotes A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :TEXT, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '10') THEN BEGIN
    RealCredit = 'A';
    AsCredit = 'A';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM IssuedDInvoices A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '11') THEN BEGIN
    RealCredit = 'N';
    AsCredit = 'N';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM ReceivedDInvoices A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF (ADocumentType = '12') THEN BEGIN
    RealCredit = 'N';
    AsCredit = 'N';
    SELECT D.Code || '-' || A.OrdNumber || '/' || P.Code, A.Description,
           D.Code || '-' || IB_LPad(CAST(A.OrdNumber AS VARCHAR(8)), 8, '0') || '/' || P.Code
    FROM CustomsDeclarations A
    JOIN DocQueues D ON D.ID = A.DocQueue_ID
    JOIN Periods P ON P.ID = A.Period_ID
    WHERE A.ID = :ADOCUMENT_ID
    INTO :DocumentDisplayName, :Text, :Sort_DocumentDisplayName;
  END ELSE IF ((ADocumentType = 'CP') OR (ADocumentType = 'CR')) THEN BEGIN
    SELECT Text, DocumentDisplayName, Sort_DocumentDisplayName, RealCredit, AsCredit
    FROM GetDocumentInfoPOS(:ADocumentType, :ADocument_ID)
    INTO :Text, :DocumentDisplayName, :Sort_DocumentDisplayName, :RealCredit, :AsCredit;
  END ELSE IF (ADocumentType = '47') THEN BEGIN
    RealCredit = 'N';
    AsCredit = 'N';
    SELECT Text, DocumentDisplayName, Sort_DocumentDisplayName
    FROM GetDocumentInfoWAGE(:ADocumentType, :ADocument_ID)
    INTO :Text, :DocumentDisplayName, :Sort_DocumentDisplayName;
  END
SUSPEND;
end

Generated by ABRA Software a.s. 27.10.2021 16:34:15