Dear experts,
I was working on report in business central. there was need to add code in onafterGetRecord of dataitem .but there are many data item and it's confusing to find out trigger as many dataitem kin Report is there any way how we can identify correct trigger of dataitem
in nav we get dataitem name on each trigger by which we can identify but in BC how we can kidentify I tried using AL outline but it's confusing any other method.
thanks in advance!!!!!!!!!!!!!
for example:
report 33020811 "Order Confirmation_test"
{
DefaultLayout = RDLC;
RDLCLayout = './OrderConfirmationtest.rdlc';
Caption = 'Order Confirmation New';
UsageCategory = ReportsAndAnalysis;
dataset
{
dataitem("Sales Header"; "Sales Header")
{
DataItemTableView = SORTING("Document Type", "No.")
WHERE("Document Type" = CONST(Order));
RequestFilterFields = "No.", "Sell-to Customer No.", "No. Printed";
RequestFilterHeading = 'Sales Order';
column(DocumentType_SalesHeader; "Document Type")
{
}
column(No_SalesHeader; "No.")
{
}
column(InvDiscAmtCaption; InvDiscAmtCaptionLbl)
{
}
column(VATPercentCaption; VATPercentCaptionLbl)
{
}
column(VATBaseCaption; VATBaseCaptionLbl)
{
}
column(VATAmtCaption; VATAmtCaptionLbl)
{
}
column(LineAmtCaption; LineAmtCaptionLbl)
{
}
column(VATIdentCaption; VATIdentCaptionLbl)
{
}
column(TotalCaption; TotalCaptionLbl)
{
}
dataitem(CopyLoop; Integer)
{
DataItemTableView = SORTING(Number);
dataitem(PageLoop; Integer)
{
DataItemTableView = SORTING(Number)
WHERE(Number = CONST(1));
column(CompanyInfo_GST_RegistrationNo; CompanyInfo."GST Registration No.")
{
}
column(Customer_GST_RegistrationNo; Customer."GST Registration No.")
{
}
column(CompanyRegistrationLbl; CompanyRegistrationLbl)
{
}
column(CustomerRegistrationLbl; CustomerRegistrationLbl)
{
}
column(CompanyInfo2Picture; CompanyInfo2.Picture)
{
}
column(CompanyInfo1Picture; CompanyInfo1.Picture)
{
}
column(CompanyInfo3Picture; CompanyInfo3.Picture)
{
}
column(DocumentCaptionCopyText; STRSUBSTNO(Text004, CopyText))
{
}
column(GSTComponentCode1; GSTComponentCode[1] + ' Amount')
{
}
column(GSTComponentCode2; GSTComponentCode[2] + ' Amount')
{
}
column(GSTComponentCode3; GSTComponentCode[3] + ' Amount')
{
}
column(GSTComponentCode4; GSTComponentCode[4] + 'Amount')
{
}
column(GSTCompAmount1; ABS(GSTCompAmount[1]))
{
}
column(GSTCompAmount2; ABS(GSTCompAmount[2]))
{
}
column(GSTCompAmount3; ABS(GSTCompAmount[3]))
{
}
column(GSTCompAmount4; ABS(GSTCompAmount[4]))
{
}
column(IsGSTApplicable; IsGSTApplicable)
{
}
column(CustAddr1; CustAddr[1])
{
}
column(CompanyAddr1; CompanyAddr[1])
{
}
column(CustAddr2; CustAddr[2])
{
}
column(CompanyAddr2; CompanyAddr[2])
{
}
column(CustAddr3; CustAddr[3])
{
}
column(CompanyAddr3; CompanyAddr[3])
{
}
column(CustAddr4; CustAddr[4])
{
}
column(CompanyAddr4; CompanyAddr[4])
{
}
column(CustAddr5; CustAddr[5])
{
}
column(CompanyInfoPhoneNo; CompanyInfo."Phone No.")
{
}
column(CustAddr6; CustAddr[6])
{
}
column(PaymentTermsDescription; PaymentTerms.Description)
{
}
column(ShipmentMethodDescription; ShipmentMethod.Description)
{
}
column(PrepmtPaymentTermsDescription; PrepmtPaymentTerms.Description)
{
}
column(CompanyInfoEMail; CompanyInfo."E-Mail")
{
}
column(CompanyInfoHomePage; CompanyInfo."Home Page")
{
}
column(CompanyInfoVATRegNo; CompanyInfo."VAT Registration No.")
{
}
column(CompanyInfoGiroNo; CompanyInfo."Giro No.")
{
}
column(CompanyInfoBankName; CompanyInfo."Bank Name")
{
}
column(CompanyInfoBankAccountNo; CompanyInfo."Bank Account No.")
{
}
column(BillToCustNo_SalesHeader; "Sales Header"."Bill-to Customer No.")
{
IncludeCaption = false;
}
column(DocumentDate_SalesHeader; FORMAT("Sales Header"."Document Date", 0, 4))
{
}
column(VATNoText; VATNoText)
{
}
column(VATRegNo_SalesHeader; "Sales Header"."VAT Registration No.")
{
}
column(ShipmentDate_SalesHeader; FORMAT("Sales Header"."Shipment Date"))
{
}
column(SalesPersonText; SalesPersonText)
{
}
column(SalesPurchPersonName; SalesPurchPerson.Name)
{
}
column(ReferenceText; ReferenceText)
{
}
column(YourReference_SalesHeader; "Sales Header"."Your Reference")
{
}
column(CustAddr7; CustAddr[7])
{
}
column(CustAddr8; CustAddr[8])
{
}
column(CompanyAddr5; CompanyAddr[5])
{
}
column(CompanyAddr6; CompanyAddr[6])
{
}
column(PricesInclVAT_SalesHeader; "Sales Header"."Prices Including VAT")
{
IncludeCaption = false;
}
column(PageCaption; PageCaptionCap)
{
}
column(OutputNo; OutputNo)
{
}
column(PricesInclVATYesNo; FORMAT("Sales Header"."Prices Including VAT"))
{
}
column(PhoneNoCaption; PhoneNoCaptionLbl)
{
}
column(BillToCustNo_SalesHeaderCaption; "Sales Header".FIELDCAPTION("Bill-to Customer No."))
{
}
column(PricesInclVAT_SalesHeaderCaption; "Sales Header".FIELDCAPTION("Prices Including VAT"))
{
}
column(HomePageCaption; HomePageCaptionCap)
{
}
column(VATRegNoCaption; VATRegNoCaptionLbl)
{
}
column(GiroNoCaption; GiroNoCaptionLbl)
{
}
column(BankNameCaption; BankNameCaptionLbl)
{
}
column(BankAccNoCaption; BankAccNoCaptionLbl)
{
}
column(ShpDateCaption; ShpDateCaptionLbl)
{
}
column(OrderNoCaption; OrderNoCaptionLbl)
{
}
column(EMailCaption; EMailCaptionLbl)
{
}
column(PmtTermsDescCaption; PmtTermsDescCaptionLbl)
{
}
column(ShipMethodDescCaption; ShipMethodDescCaptionLbl)
{
}
column(PrepmtTermsDescCaption; PrepmtTermsDescCaptionLbl)
{
}
column(DocDateCaption; DocDateCaptionLbl)
{
}
column(AmtCaption; AmtCaptionLbl)
{
}
dataitem(DimensionLoop1; Integer)
{
DataItemLinkReference = "Sales Header";
DataItemTableView = SORTING(Number)
WHERE(Number = FILTER(1 ..));
column(DimText; DimText)
{
}
column(Number_Integer; Number)
{
}
column(HdrDimsCaption; HdrDimsCaptionLbl)
{
}
trigger OnAfterGetRecord()
begin
IF Number = 1 THEN BEGIN
IF NOT DimSetEntry1.FIND('-') THEN
CurrReport.BREAK;
END ELSE
IF NOT Continue THEN
CurrReport.BREAK;
CLEAR(DimText);
Continue := FALSE;
REPEAT
OldDimText := DimText;
IF DimText = '' THEN
DimText := STRSUBSTNO(
'%1 %2', DimSetEntry1."Dimension Code", DimSetEntry1."Dimension Value Code")
ELSE
DimText :=
STRSUBSTNO(
'%1, %2 %3', DimText,
DimSetEntry1."Dimension Code", DimSetEntry1."Dimension Value Code");
IF STRLEN(DimText) > MAXSTRLEN(OldDimText) THEN BEGIN
DimText := OldDimText;
Continue := TRUE;
EXIT;
END;
UNTIL (DimSetEntry1.NEXT = 0);
end;
trigger OnPreDataItem()
begin
IF NOT ShowInternalInfo THEN
CurrReport.BREAK;
end;
}
dataitem("Sales Line"; "Sales Line")
{
DataItemLink = "Document Type" = FIELD("Document Type"),
"Document No." = FIELD("No.");
DataItemLinkReference = "Sales Header";
DataItemTableView = SORTING("Document Type", "Document No.", "Line No.");
trigger OnPreDataItem()
begin
CurrReport.BREAK;
end;
}
dataitem(RoundLoop; Integer)
{
DataItemTableView = SORTING(Number);
column(SalesLineAmt; SalesLine."Line Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(Desc_SalesLine; "Sales Line".Description)
{
}
column(NNCSalesLineLineAmt; NNC_SalesLineLineAmt)
{
}
column(NNCSalesLineInvDiscAmt; NNC_SalesLineInvDiscAmt)
{
}
column(NNCTotalLCY; NNC_TotalLCY)
{
}
column(NNCVATAmt; NNC_VATAmt)
{
}
column(NNCPmtDiscOnVAT; NNC_PmtDiscOnVAT)
{
}
column(NNCTotalInclVAT2; NNC_TotalInclVAT2)
{
}
column(NNCVatAmt2; NNC_VatAmt2)
{
}
column(NNCTotalExclVAT2; NNC_TotalExclVAT2)
{
}
column(VATBaseDisc_SalesHeader; "Sales Header"."VAT Base Discount %")
{
}
column(ShowInternalInfo; ShowInternalInfo)
{
}
column(No2_SalesLine; "Sales Line"."No.")
{
}
column(Qty_SalesLine; "Sales Line".Quantity)
{
}
column(UnitofMeasure_SalesLine; "Sales Line"."Unit of Measure")
{
IncludeCaption = false;
}
column(UnitPrice_SalesLine; "Sales Line"."Unit Price")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 2;
}
column(LineDiscount_SalesLine; "Sales Line"."Line Discount %")
{
}
column(LineAmt_SalesLine; "Sales Line"."Line Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(AllowInvDisc_SalesLine; "Sales Line"."Allow Invoice Disc.")
{
IncludeCaption = false;
}
column(LineDiscount_SalesLineAmount; "Sales Line"."Line Discount Amount")
{
}
column(VATIdentifier_SalesLine; "Sales Line"."VAT Identifier")
{
}
column(Type_SalesLine; FORMAT("Sales Line".Type))
{
}
column(No_SalesLine; "Sales Line"."Line No.")
{
}
column(AllowInvoiceDisYesNo; FORMAT("Sales Line"."Allow Invoice Disc."))
{
}
column(SalesLineInvDiscAmount; SalesLine."Inv. Discount Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(TotalText; TotalText)
{
}
column(SalesLineLineAmtInvDiscAmt; SalesLine."Line Amount" - SalesLine."Inv. Discount Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
/*column(SalesLineTaxAmount; SalesLine."Tax Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}*///win594
column(ChargesAmount; ChargesAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(OtherTaxesAmount; OtherTaxesAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(TotalInclVATText; TotalInclVATText)
{
}
column(TotalAmount; TotalAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
/*column(VATAmount; SalesLine."Service Tax SHE Cess Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}*///win594
column(NNCSalesLineExciseAmt; NNC_SalesLineExciseAmt)
{
}
column(NNCSalesLineTaxAmt; NNC_SalesLineTaxAmt)
{
}
column(NNCSalesLineSvcTaxAmt; NNC_SalesLineSvcTaxAmt)
{
}
column(NNCSalesLineSvcTaxeCessAmt; NNC_SalesLineSvcTaxeCessAmt)
{
}
column(NNCSalesLineSvcSHECessAmt; NNC_SalesLineSvcSHECessAmt)
{
}
column(NNCSalesLineTDSTCSSHECESS; NNC_SalesLineTDSTCSSHECESS)
{
}
column(VATDiscountAmount; -VATDiscountAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(TotalExclVATText; TotalExclVATText)
{
}
column(VATBaseAmount; VATBaseAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(VATAmtLineVATAmtText; VATAmountLine.VATAmountText)
{
}
column(VATAmount1; VATAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(TotalAmountInclVAT; TotalAmountInclVAT)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(No_SalesLineCaption; "Sales Line".FIELDCAPTION("No."))
{
}
column(Description_SalesLineCaption; "Sales Line".FIELDCAPTION(Description))
{
}
column(Quantity_SalesLineCaption; "Sales Line".FIELDCAPTION(Quantity))
{
}
column(UnitofMeasure_SalesLineCaption; "Sales Line".FIELDCAPTION("Unit of Measure"))
{
}
column(AllowInvDisc_SalesLineCaption; "Sales Line".FIELDCAPTION("Allow Invoice Disc."))
{
}
column(UnitPriceCaption; UnitPriceCaptionLbl)
{
}
column(DiscPercentCaption; DiscPercentCaptionLbl)
{
}
column(LineDiscCaption; LineDiscCaptionLbl)
{
}
column(SubtotalCaption; SubtotalCaptionLbl)
{
}
column(ExciseAmtCaption; ExciseAmtCaptionLbl)
{
}
column(TaxAmtCaption; TaxAmtCaptionLbl)
{
}
column(ServTaxAmtCaption; ServTaxAmtCaptionLbl)
{
}
column(ChargesAmtCaption; ChargesAmtCaptionLbl)
{
}
column(OtherTaxesAmtCaption; OtherTaxesAmtCaptionLbl)
{
}
column(ServTaxeCessAmtCaption; ServTaxeCessAmtCaptionLbl)
{
}
column(TCSAmtCaption; TCSAmtCaptionLbl)
{
}
column(ServTaxSHECessAmtCaption; ServTaxSHECessAmtCaptionLbl)
{
}
column(VATDisctAmtCaption; VATDisctAmtCaptionLbl)
{
}
column(NNCSalesLineSvcTaxSBCAmt; NNC_SalesLineSvcTaxSBCAmt)
{
}
column(ServTaxSBCAmtCaption; ServTaxSBCAmtCaptionLbl)
{
}
column(NNCSalesLineKKCessAmt; NNC_SalesLineKKCessAmt)
{
}
column(KKCessAmtCaption; KKCessAmtCaptionLbl)
{
}
dataitem(DimensionLoop2; Integer)
{
DataItemTableView = SORTING(Number)
WHERE(Number = FILTER(1 ..));
column(DimText1; DimText)
{
}
column(LineDimsCaption; LineDimsCaptionLbl)
{
}
trigger OnAfterGetRecord()
begin
IF Number = 1 THEN BEGIN
IF NOT DimSetEntry2.FINDFIRST THEN
CurrReport.BREAK;
END ELSE
IF NOT Continue THEN
CurrReport.BREAK;
CLEAR(DimText);
Continue := FALSE;
REPEAT
OldDimText := DimText;
IF DimText = '' THEN
DimText := STRSUBSTNO(
'%1 %2', DimSetEntry2."Dimension Code", DimSetEntry2."Dimension Value Code")
ELSE
DimText :=
STRSUBSTNO(
'%1, %2 %3', DimText,
DimSetEntry2."Dimension Code", DimSetEntry2."Dimension Value Code");
IF STRLEN(DimText) > MAXSTRLEN(OldDimText) THEN BEGIN
DimText := OldDimText;
Continue := TRUE;
EXIT;
END;
UNTIL (DimSetEntry2.NEXT = 0);
/*IF ShowInternalInfo THEN BEGIN
NNC_SalesLineExciseAmt += SalesLine."Excise Amount";
NNC_SalesLineTaxAmt += SalesLine."Tax Amount";
NNC_SalesLineSvcTaxAmt += SalesLine."Service Tax Amount";
NNC_SalesLineSvcTaxeCessAmt += SalesLine."Service Tax eCess Amount";
NNC_SalesLineSvcSHECessAmt += SalesLine."Service Tax SHE Cess Amount";
NNC_SalesLineTDSTCSSHECESS += SalesLine."Total TDS/TCS Incl. SHE CESS";
NNC_SalesLineAmtToCustomer += SalesLine."Amount To Customer";
NNC_SalesLineSvcTaxSBCAmt += SalesLine."Service Tax SBC Amount";
NNC_SalesLineKKCessAmt += SalesLine."KK Cess Amount";
NNC_TotalGST += SalesLine."Total GST Amount";
TotalAmount := NNC_SalesLineLineAmt - NNC_SalesLineInvDiscAmt + NNC_SalesLineExciseAmt + NNC_SalesLineTaxAmt +
NNC_SalesLineSvcTaxAmt + NNC_SalesLineSvcTaxeCessAmt + ChargesAmount +
OtherTaxesAmount +
NNC_SalesLineTDSTCSSHECESS + NNC_SalesLineSvcSHECessAmt +
NNC_SalesLineSvcTaxSBCAmt + NNC_SalesLineKKCessAmt + NNC_TotalGST;
END;*///win594
end;
trigger OnPostDataItem()
begin
/* IF NOT ShowInternalInfo THEN BEGIN
NNC_SalesLineExciseAmt += SalesLine."Excise Amount";
NNC_SalesLineTaxAmt += SalesLine."Tax Amount";
NNC_SalesLineSvcTaxAmt += SalesLine."Service Tax Amount";
NNC_SalesLineSvcTaxeCessAmt += SalesLine."Service Tax eCess Amount";
NNC_SalesLineSvcSHECessAmt += SalesLine."Service Tax SHE Cess Amount";
NNC_SalesLineTDSTCSSHECESS += SalesLine."Total TDS/TCS Incl. SHE CESS";
NNC_SalesLineAmtToCustomer += SalesLine."Amount To Customer";
NNC_SalesLineSvcTaxSBCAmt += SalesLine."Service Tax SBC Amount";
NNC_SalesLineKKCessAmt += SalesLine."KK Cess Amount";
NNC_TotalGST += SalesLine."Total GST Amount";
TotalAmount := NNC_SalesLineLineAmt - NNC_SalesLineInvDiscAmt + NNC_SalesLineExciseAmt + NNC_SalesLineTaxAmt +
NNC_SalesLineSvcTaxAmt + NNC_SalesLineSvcTaxeCessAmt + ChargesAmount +
OtherTaxesAmount +
NNC_SalesLineTDSTCSSHECESS + NNC_SalesLineSvcSHECessAmt +
NNC_SalesLineSvcTaxSBCAmt + NNC_SalesLineKKCessAmt + NNC_TotalGST;
END;*///win594
end;
trigger OnPreDataItem()
begin
IF NOT ShowInternalInfo THEN
CurrReport.BREAK;
DimSetEntry2.SETRANGE("Dimension Set ID", "Sales Line"."Dimension Set ID");
end;
}
dataitem(AsmLoop; Integer)
{
DataItemTableView = SORTING(Number);
column(AsmLineUnitOfMeasureText; GetUnitOfMeasureDescr(AsmLine."Unit of Measure Code"))
{
}
column(AsmLineQuantity; AsmLine.Quantity)
{
}
column(AsmLineDescription; BlanksForIndent + AsmLine.Description)
{
}
column(AsmLineNo; BlanksForIndent + AsmLine."No.")
{
}
column(AsmLineType; AsmLine.Type)
{
}
trigger OnAfterGetRecord()
begin
IF Number = 1 THEN
AsmLine.FINDSET
ELSE
AsmLine.NEXT;
end;
trigger OnPreDataItem()
begin
IF NOT DisplayAssemblyInformation THEN
CurrReport.BREAK;
IF NOT AsmInfoExistsForLine THEN
CurrReport.BREAK;
AsmLine.SETRANGE("Document Type", AsmHeader."Document Type");
AsmLine.SETRANGE("Document No.", AsmHeader."No.");
SETRANGE(Number, 1, AsmLine.COUNT);
end;
}
trigger OnAfterGetRecord()
//win594 StructureLineDetails: Record "Structure Order Line Details";
begin
IF Number = 1 THEN
SalesLine.FIND('-')
ELSE
SalesLine.NEXT;
"Sales Line" := SalesLine;
IF DisplayAssemblyInformation THEN
AsmInfoExistsForLine := SalesLine.AsmToOrderExists(AsmHeader);
IF NOT "Sales Header"."Prices Including VAT" AND
(SalesLine."VAT Calculation Type" = SalesLine."VAT Calculation Type"::"Full VAT")
THEN
SalesLine."Line Amount" := 0;
IF (SalesLine.Type = SalesLine.Type::"G/L Account") AND (NOT ShowInternalInfo) THEN
"Sales Line"."No." := '';
NNC_SalesLineLineAmt += SalesLine."Line Amount";
NNC_SalesLineInvDiscAmt += SalesLine."Inv. Discount Amount";
NNC_TotalLCY := NNC_SalesLineLineAmt - NNC_SalesLineInvDiscAmt;
NNC_TotalExclVAT := NNC_TotalLCY;
NNC_VATAmt := VATAmount;
NNC_TotalInclVAT := NNC_TotalLCY - NNC_VATAmt;
NNC_PmtDiscOnVAT := -VATDiscountAmount;
NNC_TotalInclVAT2 := TotalAmountInclVAT;
NNC_VatAmt2 := VATAmount;
NNC_TotalExclVAT2 := VATBaseAmount;
/* IF IsGSTApplicable AND (SalesLine.Type <> SalesLine.Type::" ") THEN BEGIN
j := 1;
GSTComponent.RESET;
//win594 GSTComponent.SETRANGE("GST Jurisdiction Type", SalesLine."GST Jurisdiction Type");
IF GSTComponent.FINDSET THEN
REPEAT
GSTComponentCode[j] := GSTComponent.Code;
DetailedGSTEntryBuffer.RESET;
DetailedGSTEntryBuffer.SETCURRENTKEY("Transaction Type", "Document Type", "Document No.", "Line No.");
DetailedGSTEntryBuffer.SETRANGE("Transaction Type", DetailedGSTEntryBuffer."Transaction Type"::Sales);
DetailedGSTEntryBuffer.SETRANGE("Document Type", SalesLine."Document Type");
DetailedGSTEntryBuffer.SETRANGE("Document No.", SalesLine."Document No.");
DetailedGSTEntryBuffer.SETRANGE("Line No.", SalesLine."Line No.");
DetailedGSTEntryBuffer.SETRANGE("GST Component Code", GSTComponentCode[j]);
IF DetailedGSTEntryBuffer.FINDSET THEN BEGIN
REPEAT
GSTCompAmount[j] += DetailedGSTEntryBuffer."GST Amount";
UNTIL DetailedGSTEntryBuffer.NEXT = 0;
j += 1;
END;
UNTIL GSTComponent.NEXT = 0;
END;
StructureLineDetails.RESET;
StructureLineDetails.SETRANGE(Type, StructureLineDetails.Type::Sale);
StructureLineDetails.SETRANGE("Document Type", SalesLine."Document Type");
StructureLineDetails.SETRANGE("Document No.", SalesLine."Document No.");
StructureLineDetails.SETRANGE("Item No.", SalesLine."No.");
StructureLineDetails.SETRANGE("Line No.", SalesLine."Line No.");
IF StructureLineDetails.FIND('-') THEN
REPEAT
IF NOT StructureLineDetails."Payable to Third Party" THEN BEGIN
IF StructureLineDetails."Tax/Charge Type" = StructureLineDetails."Tax/Charge Type"::Charges THEN
ChargesAmount := ChargesAmount + ROUND(StructureLineDetails.Amount);
IF StructureLineDetails."Tax/Charge Type" = StructureLineDetails."Tax/Charge Type"::"Other Taxes" THEN
OtherTaxesAmount := OtherTaxesAmount + ROUND(StructureLineDetails.Amount);
END;
UNTIL StructureLineDetails.NEXT = 0;
TotalAmount := SalesLine."Line Amount" - VATAmountLine."Invoice Discount Amount" + SalesLine."Excise Amount" + SalesLine."Tax Amount"
+ SalesLine."Service Tax Amount" + SalesLine."Service Tax eCess Amount" + ChargesAmount + OtherTaxesAmount
+ SalesLine."Total TDS/TCS Incl. SHE CESS" + SalesLine."Service Tax SHE Cess Amount" + SalesLine."Service Tax SBC Amount" +
SalesLine."KK Cess Amount" + SalesLine."Total GST Amount";*/
end;
trigger OnPostDataItem()
begin
SalesLine.DELETEALL;
end;
trigger OnPreDataItem()
begin
MoreLines := SalesLine.FIND('+');
WHILE MoreLines AND (SalesLine.Description = '') AND (SalesLine."Description 2" = '') AND
(SalesLine."No." = '') AND (SalesLine.Quantity = 0) AND
(SalesLine.Amount = 0)
DO
MoreLines := SalesLine.NEXT(-1) <> 0;
IF NOT MoreLines THEN
CurrReport.BREAK;
SalesLine.SETRANGE("Line No.", 0, SalesLine."Line No.");
SETRANGE(Number, 1, SalesLine.COUNT);
/*CurrReport.CREATETOTALS(SalesLine."Line Amount", SalesLine."Inv. Discount Amount", SalesLine."Excise Amount", SalesLine."Tax Amount",
SalesLine."Service Tax Amount", SalesLine."Service Tax eCess Amount",
SalesLine."Service Tax SHE Cess Amount",
SalesLine."Total TDS/TCS Incl. SHE CESS", SalesLine."Amount To Customer", SalesLine."Service Tax SBC Amount");
CurrReport.CREATETOTALS(SalesLine."KK Cess Amount");*/
NNC_SalesLineExciseAmt := 0;
NNC_SalesLineTaxAmt := 0;
NNC_SalesLineSvcTaxAmt := 0;
NNC_SalesLineSvcTaxeCessAmt := 0;
NNC_SalesLineSvcSHECessAmt := 0;
NNC_SalesLineTDSTCSSHECESS := 0;
NNC_SalesLineAmtToCustomer := 0;
NNC_SalesLineSvcTaxSBCAmt := 0;
NNC_SalesLineKKCessAmt := 0;
end;
}
dataitem(VATCounter; Integer)
{
DataItemTableView = SORTING(Number);
column(VATAmountLineVATBase; VATAmountLine."VAT Base")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(VATAmountLineVATAmount; VATAmountLine."VAT Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(VATAmountLineLineAmount; VATAmountLine."Line Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(VATAmtLineInvDiscBaseAmt; VATAmountLine."Inv. Disc. Base Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(VATAmtLineInvDiscAmt; VATAmountLine."Invoice Discount Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(VATAmountLineVAT; VATAmountLine."VAT %")
{
DecimalPlaces = 0 : 5;
}
column(VATAmtLineVATIdentifier; VATAmountLine."VAT Identifier")
{
}
column(VATAmtSpecCaption; VATAmtSpecCaptionLbl)
{
}
column(InvDiscBaseAmtCaption; InvDiscBaseAmtCaptionLbl)
{
}
trigger OnAfterGetRecord()
begin
VATAmountLine.GetLine(Number);
end;
trigger OnPreDataItem()
begin
IF VATAmount = 0 THEN
CurrReport.BREAK;
SETRANGE(Number, 1, VATAmountLine.COUNT);
CurrReport.CREATETOTALS(
VATAmountLine."Line Amount", VATAmountLine."Inv. Disc. Base Amount",
VATAmountLine."Invoice Discount Amount", VATAmountLine."VAT Base", VATAmountLine."VAT Amount");
end;
}
dataitem(VATCounterLCY; Integer)
{
DataItemTableView = SORTING(Number);
column(VALExchRate; VALExchRate)
{
}
column(VALSpecLCYHeader; VALSpecLCYHeader)
{
}
column(VALVATBaseLCY; VALVATBaseLCY)
{
AutoFormatType = 1;
}
column(VALVATAmountLCY; VALVATAmountLCY)
{
AutoFormatType = 1;
}
column(VATAmountLineVAT1; VATAmountLine."VAT %")
{
DecimalPlaces = 0 : 5;
}
column(VATAmtLineVATIdentifier1; VATAmountLine."VAT Identifier")
{
}
trigger OnAfterGetRecord()
begin
VATAmountLine.GetLine(Number);
VALVATBaseLCY :=
VATAmountLine.GetBaseLCY(
"Sales Header"."Posting Date", "Sales Header"."Currency Code", "Sales Header"."Currency Factor");
VALVATAmountLCY :=
VATAmountLine.GetAmountLCY(
"Sales Header"."Posting Date", "Sales Header"."Currency Code", "Sales Header"."Currency Factor");
end;
trigger OnPreDataItem()
begin
IF (NOT GLSetup."Print VAT specification in LCY") OR
("Sales Header"."Currency Code" = '') OR
(VATAmountLine.GetTotalVATAmount = 0) THEN
CurrReport.BREAK;
SETRANGE(Number, 1, VATAmountLine.COUNT);
CurrReport.CREATETOTALS(VALVATBaseLCY, VALVATAmountLCY);
IF GLSetup."LCY Code" = '' THEN
VALSpecLCYHeader := Text007 + Text008
ELSE
VALSpecLCYHeader := Text007 + FORMAT(GLSetup."LCY Code");
CurrExchRate.FindCurrency("Sales Header"."Posting Date", "Sales Header"."Currency Code", 1);
VALExchRate := STRSUBSTNO(Text009, CurrExchRate."Relational Exch. Rate Amount", CurrExchRate."Exchange Rate Amount");
end;
}
dataitem(Total2; Integer)
{
DataItemTableView = SORTING(Number)
WHERE(Number = CONST(1));
column(SellToCustNo_SalesHeader; "Sales Header"."Sell-to Customer No.")
{
IncludeCaption = false;
}
column(ShipToAddr8; ShipToAddr[8])
{
}
column(ShipToAddr7; ShipToAddr[7])
{
}
column(ShipToAddr6; ShipToAddr[6])
{
}
column(ShipToAddr5; ShipToAddr[5])
{
}
column(ShipToAddr4; ShipToAddr[4])
{
}
column(ShipToAddr3; ShipToAddr[3])
{
}
column(ShipToAddr2; ShipToAddr[2])
{
}
column(ShipToAddr1; ShipToAddr[1])
{
}
column(ShipToAddrCaption; ShipToAddrCaptionLbl)
{
}
column(SellToCustNo_SalesHeaderCaption; "Sales Header".FIELDCAPTION("Sell-to Customer No."))
{
}
trigger OnPreDataItem()
begin
IF NOT ShowShippingAddr THEN
CurrReport.BREAK;
end;
}
dataitem(PrepmtLoop; Integer)
{
DataItemTableView = SORTING(Number)
WHERE(Number = FILTER(1 ..));
column(PrepmtLineAmount; PrepmtLineAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(PrepmtInvBufDescription; PrepmtInvBuf.Description)
{
}
column(PrepmtInvBufGLAccountNo; PrepmtInvBuf."G/L Account No.")
{
}
column(TotalExclVATText1; TotalExclVATText)
{
}
column(PrepmtVATAmtLineVATAmtText; PrepmtVATAmountLine.VATAmountText)
{
}
column(TotalInclVATText1; TotalInclVATText)
{
}
column(PrepmtInvBufAmount; PrepmtInvBuf.Amount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(PrepmtVATAmount; PrepmtVATAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(PrepmtInvBufAmtPrepmtVATAmt; PrepmtInvBuf.Amount + PrepmtVATAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(VATAmtLineVATAmtText1; VATAmountLine.VATAmountText)
{
}
column(PrepmtTotalAmountInclVAT; PrepmtTotalAmountInclVAT)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(PrepmtVATBaseAmount; PrepmtVATBaseAmount)
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(PmtTermsCaption; PmtTermsCaptionLbl)
{
}
column(GLAccNoCaption; GLAccNoCaptionLbl)
{
}
column(PrepmtSpecCaption; PrepmtSpecCaptionLbl)
{
}
dataitem(PrepmtDimLoop; Integer)
{
DataItemTableView = SORTING(Number)
WHERE(Number = FILTER(1 ..));
column(DimText2; DimText)
{
}
trigger OnAfterGetRecord()
begin
IF Number = 1 THEN BEGIN
IF NOT PrepmtDimSetEntry.FIND('-') THEN
CurrReport.BREAK;
END ELSE
IF NOT Continue THEN
CurrReport.BREAK;
CLEAR(DimText);
Continue := FALSE;
REPEAT
OldDimText := DimText;
IF DimText = '' THEN
DimText := STRSUBSTNO(
'%1 %2', PrepmtDimSetEntry."Dimension Code", PrepmtDimSetEntry."Dimension Value Code")
ELSE
DimText :=
STRSUBSTNO(
'%1, %2 %3', DimText,
PrepmtDimSetEntry."Dimension Code", PrepmtDimSetEntry."Dimension Value Code");
IF STRLEN(DimText) > MAXSTRLEN(OldDimText) THEN BEGIN
DimText := OldDimText;
Continue := TRUE;
EXIT;
END;
UNTIL PrepmtDimSetEntry.NEXT = 0;
end;
}
trigger OnAfterGetRecord()
begin
IF Number = 1 THEN BEGIN
IF NOT PrepmtInvBuf.FIND('-') THEN
CurrReport.BREAK;
END ELSE
IF PrepmtInvBuf.NEXT = 0 THEN
CurrReport.BREAK;
IF ShowInternalInfo THEN
DimMgt.GetDimensionSet(PrepmtDimSetEntry, PrepmtInvBuf."Dimension Set ID");
IF "Sales Header"."Prices Including VAT" THEN
PrepmtLineAmount := PrepmtInvBuf."Amount Incl. VAT"
ELSE
PrepmtLineAmount := PrepmtInvBuf.Amount;
end;
trigger OnPreDataItem()
begin
CurrReport.CREATETOTALS(
PrepmtInvBuf.Amount, PrepmtInvBuf."Amount Incl. VAT",
PrepmtVATAmountLine."Line Amount", PrepmtVATAmountLine."VAT Base",
PrepmtVATAmountLine."VAT Amount",
PrepmtLineAmount);
end;
}
dataitem(PrepmtVATCounter; Integer)
{
DataItemTableView = SORTING(Number);
column(PrepmtVATAmtLineVATAmt; PrepmtVATAmountLine."VAT Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(PrepmtVATAmtLineVATBase; PrepmtVATAmountLine."VAT Base")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(PrepmtVATAmtLineLineAmt; PrepmtVATAmountLine."Line Amount")
{
AutoFormatExpression = "Sales Header"."Currency Code";
AutoFormatType = 1;
}
column(PrepmtVATAmountLineVAT; PrepmtVATAmountLine."VAT %")
{
DecimalPlaces = 0 : 5;
}
column(PrepmtVATAmtLineVATIdentifier; PrepmtVATAmountLine."VAT Identifier")
{
}
column(PrepmtVATAmtSpecCaption; PrepmtVATAmtSpecCaptionLbl)
{
}
trigger OnAfterGetRecord()
begin
PrepmtVATAmountLine.GetLine(Number);
end;
trigger OnPreDataItem()
begin
SETRANGE(Number, 1, PrepmtVATAmountLine.COUNT);
end;
}
}
trigger OnAfterGetRecord()
var
PrepmtSalesLine: Record "Sales Line" temporary;
SalesPost: Codeunit "Sales-Post";
TempSalesLine: Record "Sales Line" temporary;
begin
CLEAR(SalesLine);
CLEAR(SalesPost);
VATAmountLine.DELETEALL;
SalesLine.DELETEALL;
SalesPost.GetSalesLines("Sales Header", SalesLine, 0);
SalesLine.CalcVATAmountLines(0, "Sales Header", SalesLine, VATAmountLine);
SalesLine.UpdateVATOnLines(0, "Sales Header", SalesLine, VATAmountLine);
VATAmount := VATAmountLine.GetTotalVATAmount;
VATBaseAmount := VATAmountLine.GetTotalVATBase;
VATDiscountAmount :=
VATAmountLine.GetTotalVATDiscount("Sales Header"."Currency Code", "Sales Header"."Prices Including VAT");
TotalAmountInclVAT := VATAmountLine.GetTotalAmountInclVAT;
PrepmtInvBuf.DELETEALL;
SalesPostPrepmt.GetSalesLines("Sales Header", 0, PrepmtSalesLine);
IF NOT PrepmtSalesLine.ISEMPTY THEN BEGIN
SalesPostPrepmt.GetSalesLinesToDeduct("Sales Header", TempSalesLine);
IF NOT TempSalesLine.ISEMPTY THEN
SalesPostPrepmt.CalcVATAmountLines("Sales Header", TempSalesLine, PrepmtVATAmountLineDeduct, 1);
END;
SalesPostPrepmt.CalcVATAmountLines("Sales Header", PrepmtSalesLine, PrepmtVATAmountLine, 0);
PrepmtVATAmountLine.DeductVATAmountLine(PrepmtVATAmountLineDeduct);
SalesPostPrepmt.UpdateVATOnLines("Sales Header", PrepmtSalesLine, PrepmtVATAmountLine, 0);
//win594SalesPostPrepmt.BuildInvLineBuffer2("Sales Header", PrepmtSalesLine, 0, PrepmtInvBuf);
PrepmtVATAmount := PrepmtVATAmountLine.GetTotalVATAmount;
PrepmtVATBaseAmount := PrepmtVATAmountLine.GetTotalVATBase;
PrepmtTotalAmountInclVAT := PrepmtVATAmountLine.GetTotalAmountInclVAT;
IF Number > 1 THEN BEGIN
CopyText := Text003;
OutputNo += 1;
END;
CurrReport.PAGENO := 1;
NNC_TotalLCY := 0;
NNC_TotalExclVAT := 0;
NNC_VATAmt := 0;
NNC_TotalInclVAT := 0;
NNC_PmtDiscOnVAT := 0;
NNC_TotalInclVAT2 := 0;
NNC_VatAmt2 := 0;
NNC_TotalExclVAT2 := 0;
NNC_SalesLineLineAmt := 0;
NNC_SalesLineInvDiscAmt := 0;
ChargesAmount := 0;
TotalAmount := 0;
OtherTaxesAmount := 0;
end;
trigger OnPostDataItem()
begin
IF Print THEN
SalesCountPrinted.RUN("Sales Header");
end;
trigger OnPreDataItem()
begin
NoOfLoops := ABS(NoOfCopies) + 1;
CopyText := '';
SETRANGE(Number, 1, NoOfLoops);
OutputNo := 1;
end;
}
trigger OnAfterGetRecord()
begin
//win594 CurrReport.LANGUAGE := Language.GetLanguageID("Language Code");
//win594 IsGSTApplicable := GSTManagement.IsGSTApplicable(Structure);
Customer.GET("Bill-to Customer No.");
IF RespCenter.GET("Responsibility Center") THEN BEGIN
FormatAddr.RespCenter(CompanyAddr, RespCenter);
CompanyInfo."Phone No." := RespCenter."Phone No.";
CompanyInfo."Fax No." := RespCenter."Fax No.";
END ELSE
FormatAddr.Company(CompanyAddr, CompanyInfo);
DimSetEntry1.SETRANGE("Dimension Set ID", "Sales Header"."Dimension Set ID");
IF "Salesperson Code" = '' THEN BEGIN
CLEAR(SalesPurchPerson);
SalesPersonText := '';
END ELSE BEGIN
SalesPurchPerson.GET("Salesperson Code");
SalesPersonText := Text000;
END;
IF "Your Reference" = '' THEN
ReferenceText := ''
ELSE
ReferenceText := FIELDCAPTION("Your Reference");
IF "VAT Registration No." = '' THEN
VATNoText := ''
ELSE
VATNoText := FIELDCAPTION("VAT Registration No.");
IF "Currency Code" = '' THEN BEGIN
GLSetup.TESTFIELD("LCY Code");
TotalText := STRSUBSTNO(Text001, GLSetup."LCY Code");
TotalInclVATText := STRSUBSTNO(Text13700, GLSetup."LCY Code");
TotalExclVATText := STRSUBSTNO(Text13701, GLSetup."LCY Code");
END ELSE BEGIN
TotalText := STRSUBSTNO(Text001, "Currency Code");
TotalInclVATText := STRSUBSTNO(Text13700, "Currency Code");
TotalExclVATText := STRSUBSTNO(Text13701, "Currency Code");
END;
FormatAddr.SalesHeaderBillTo(CustAddr, "Sales Header");
IF "Payment Terms Code" = '' THEN
PaymentTerms.INIT
ELSE BEGIN
PaymentTerms.GET("Payment Terms Code");
PaymentTerms.TranslateDescription(PaymentTerms, "Sales Header"."Language Code");
END;
IF "Prepmt. Payment Terms Code" = '' THEN
PrepmtPaymentTerms.INIT
ELSE BEGIN
PrepmtPaymentTerms.GET("Prepmt. Payment Terms Code");
PrepmtPaymentTerms.TranslateDescription(PrepmtPaymentTerms, "Sales Header"."Language Code");
END;
IF "Prepmt. Payment Terms Code" = '' THEN
PrepmtPaymentTerms.INIT
ELSE BEGIN
PrepmtPaymentTerms.GET("Prepmt. Payment Terms Code");
PrepmtPaymentTerms.TranslateDescription(PrepmtPaymentTerms, "Sales Header"."Language Code");
END;
IF "Shipment Method Code" = '' THEN
ShipmentMethod.INIT
ELSE BEGIN
ShipmentMethod.GET("Shipment Method Code");
ShipmentMethod.TranslateDescription(ShipmentMethod, "Sales Header"."Language Code");
END;
//win594 FormatAddr.SalesHeaderShipTo(ShipToAddr, "Sales Header");
ShowShippingAddr := "Sell-to Customer No." <> "Bill-to Customer No.";
FOR i := 1 TO ARRAYLEN(ShipToAddr) DO
IF ShipToAddr[i] <> CustAddr[i] THEN
ShowShippingAddr := TRUE;
IF Print THEN BEGIN
/* IF ShowRequestPage AND ArchiveDocument OR
NOT ShowRequestPage AND SalesSetup."Archive Quotes and Orders"
THEN
ArchiveManagement.StoreSalesDocument("Sales Header", LogInteraction);*/ //win594
IF LogInteraction THEN BEGIN
CALCFIELDS("No. of Archived Versions");
IF "Bill-to Contact No." <> '' THEN
SegManagement.LogDocument(
SegManagement.SalesOrderConfirmInterDocType, "No.", "Doc. No. Occurrence",
"No. of Archived Versions", DATABASE::Contact, "Bill-to Contact No."
, "Salesperson Code", "Campaign No.", "Posting Description", "Opportunity No.")
ELSE
SegManagement.LogDocument(
SegManagement.SalesOrderConfirmInterDocType, "No.", "Doc. No. Occurrence",
"No. of Archived Versions", DATABASE::Customer, "Bill-to Customer No.",
"Salesperson Code", "Campaign No.", "Posting Description", "Opportunity No.");
END;
END;
end;
trigger OnPreDataItem()
begin
Print := Print OR NOT CurrReport.PREVIEW;
AsmInfoExistsForLine := FALSE;
end;
}
}
requestpage
{
SaveValues = true;
layout
{
area(content)
{
group(Options)
{
Caption = 'Options';
field(NoOfCopies; NoOfCopies)
{
Caption = 'No. of Copies';
}
field(ShowInternalInfo; ShowInternalInfo)
{
Caption = 'Show Internal Information';
}
field(ArchiveDocument; ArchiveDocument)
{
Caption = 'Archive Document';
trigger OnValidate()
begin
IF NOT ArchiveDocument THEN
LogInteraction := FALSE;
end;
}
field(LogInteraction; LogInteraction)
{
Caption = 'Log Interaction';
Enabled = LogInteractionEnable;
trigger OnValidate()
begin
IF LogInteraction THEN
ArchiveDocument := ArchiveDocumentEnable;
end;
}
field(ShowAssemblyComponents; DisplayAssemblyInformation)
{
Caption = 'Show Assembly Components';
}
}
}
}
actions
{
}
trigger OnInit()
begin
LogInteractionEnable := TRUE;
end;
trigger OnOpenPage()
begin
//win594 ArchiveDocument := SalesSetup."Archive Quotes and Orders";
LogInteraction := SegManagement.FindInteractTmplCode(3) <> '';
LogInteractionEnable := LogInteraction;
ShowRequestPage := TRUE;
end;
}
labels
{
}
trigger OnInitReport()
begin
GLSetup.GET;
CompanyInfo.GET;
SalesSetup.GET;
CASE SalesSetup."Logo Position on Documents" OF
SalesSetup."Logo Position on Documents"::"No Logo":
;
SalesSetup."Logo Position on Documents"::Left:
BEGIN
CompanyInfo3.GET;
CompanyInfo3.CALCFIELDS(CompanyInfo3.Picture);
END;
SalesSetup."Logo Position on Documents"::Center:
BEGIN
CompanyInfo1.GET;
CompanyInfo1.CALCFIELDS(CompanyInfo1.Picture);
END;
SalesSetup."Logo Position on Documents"::Right:
BEGIN
CompanyInfo2.GET;
CompanyInfo2.CALCFIELDS(CompanyInfo2.Picture);
END;
END;
end;
var
Text000: Label 'Salesperson';
Text001: Label 'Total %1';
Text003: Label ' COPY';
Text004: Label 'Order Confirmation%1';
PageCaptionCap: Label 'Page %1 of %2';
GLSetup: Record "General Ledger Setup";
ShipmentMethod: Record "Shipment Method";
PaymentTerms: Record "Payment Terms";
PrepmtPaymentTerms: Record "Payment Terms";
Customer: Record Customer;
SalesPurchPerson: Record "Salesperson/Purchaser";
CompanyInfo: Record "Company Information";
CompanyInfo1: Record "Company Information";
CompanyInfo2: Record "Company Information";
CompanyInfo3: Record "Company Information";
SalesSetup: Record "Sales & Receivables Setup";
//win594 GSTComponent: Record "GST Component";
DetailedGSTEntryBuffer: Record "Detailed GST Entry Buffer";
VATAmountLine: Record "VAT Amount Line" temporary;
PrepmtVATAmountLine: Record "VAT Amount Line" temporary;
PrepmtVATAmountLineDeduct: Record "VAT Amount Line" temporary;
SalesLine: Record "Sales Line" temporary;
DimSetEntry1: Record "Dimension Set Entry";
DimSetEntry2: Record "Dimension Set Entry";
PrepmtDimSetEntry: Record "Dimension Set Entry" temporary;
PrepmtInvBuf: Record "Prepayment Inv. Line Buffer" temporary;
RespCenter: Record "Responsibility Center";
Language: Record "Language";
CurrExchRate: Record "Currency Exchange Rate";
AsmHeader: Record "Assembly Header";
AsmLine: Record "Assembly Line";
SalesCountPrinted: Codeunit "Sales-Printed";
FormatAddr: Codeunit "Format Address";
SegManagement: Codeunit "SegManagement";
ArchiveManagement: Codeunit "ArchiveManagement";
SalesPostPrepmt: Codeunit "Sales-Post Prepayments";
DimMgt: Codeunit "DimensionManagement";
//win594 GSTManagement: Codeunit "GST Management";
GSTCompAmount: array[20] of Decimal;
GSTComponentCode: array[20] of Code[10];
CustAddr: array[8] of Text[50];
ShipToAddr: array[8] of Text[50];
CompanyAddr: array[8] of Text[50];
SalesPersonText: Text[30];
VATNoText: Text[80];
ReferenceText: Text[80];
TotalText: Text[50];
TotalExclVATText: Text[50];
TotalInclVATText: Text[50];
MoreLines: Boolean;
NoOfCopies: Integer;
NoOfLoops: Integer;
CopyText: Text[30];
ShowShippingAddr: Boolean;
i: Integer;
DimText: Text[120];
OldDimText: Text[75];
ShowInternalInfo: Boolean;
Continue: Boolean;
ArchiveDocument: Boolean;
LogInteraction: Boolean;
VATAmount: Decimal;
VATBaseAmount: Decimal;
VATDiscountAmount: Decimal;
TotalAmountInclVAT: Decimal;
VALVATBaseLCY: Decimal;
VALVATAmountLCY: Decimal;
VALSpecLCYHeader: Text[80];
Text007: Label 'VAT Amount Specification in ';
Text008: Label 'Local Currency';
Text009: Label 'Exchange rate: %1/%2';
VALExchRate: Text[50];
PrepmtVATAmount: Decimal;
PrepmtVATBaseAmount: Decimal;
PrepmtTotalAmountInclVAT: Decimal;
PrepmtLineAmount: Decimal;
OutputNo: Integer;
NNC_TotalLCY: Decimal;
NNC_TotalExclVAT: Decimal;
NNC_VATAmt: Decimal;
NNC_TotalInclVAT: Decimal;
NNC_PmtDiscOnVAT: Decimal;
NNC_TotalInclVAT2: Decimal;
NNC_VatAmt2: Decimal;
NNC_TotalExclVAT2: Decimal;
NNC_SalesLineLineAmt: Decimal;
NNC_SalesLineInvDiscAmt: Decimal;
Print: Boolean;
ChargesAmount: Decimal;
OtherTaxesAmount: Decimal;
Text13700: Label 'Total %1 Incl. Taxes';
Text13701: Label 'Total %1 Excl. Taxes';
TotalAmount: Decimal;
NNC_SalesLineSvcTaxeCessAmt: Decimal;
NNC_SalesLineExciseAmt: Decimal;
NNC_SalesLineTaxAmt: Decimal;
NNC_SalesLineSvcTaxAmt: Decimal;
NNC_SalesLineSvcSHECessAmt: Decimal;
NNC_SalesLineTDSTCSSHECESS: Decimal;
NNC_SalesLineAmtToCustomer: Decimal;
NNC_TotalGST: Decimal;
[InDataSet]
ArchiveDocumentEnable: Boolean;
[InDataSet]
LogInteractionEnable: Boolean;
DisplayAssemblyInformation: Boolean;
AsmInfoExistsForLine: Boolean;
PhoneNoCaptionLbl: Label 'Phone No.';
HomePageCaptionCap: Label 'Home Page';
VATRegNoCaptionLbl: Label 'VAT Registration No.';
GiroNoCaptionLbl: Label 'Giro No.';
BankNameCaptionLbl: Label 'Bank';
BankAccNoCaptionLbl: Label 'Account No.';
ShpDateCaptionLbl: Label 'Shipment Date';
OrderNoCaptionLbl: Label 'Order No.';
EMailCaptionLbl: Label 'E-Mail';
PmtTermsDescCaptionLbl: Label 'Payment Terms';
ShipMethodDescCaptionLbl: Label 'Shipment Method';
PrepmtTermsDescCaptionLbl: Label 'Prepayment Payment Terms';
DocDateCaptionLbl: Label 'Document Date';
AmtCaptionLbl: Label 'Amount';
HdrDimsCaptionLbl: Label 'Header Dimensions';
UnitPriceCaptionLbl: Label 'Unit Price';
DiscPercentCaptionLbl: Label 'Discount %';
LineDiscCaptionLbl: Label 'Line Discount Amount';
SubtotalCaptionLbl: Label 'Subtotal';
ExciseAmtCaptionLbl: Label 'Excise Amount';
TaxAmtCaptionLbl: Label 'Tax Amount';
ServTaxAmtCaptionLbl: Label 'Service Tax Amount';
ChargesAmtCaptionLbl: Label 'Charges Amount';
OtherTaxesAmtCaptionLbl: Label 'Other Taxes Amount';
ServTaxeCessAmtCaptionLbl: Label 'Service Tax eCess Amount';
TCSAmtCaptionLbl: Label 'TCS Amount';
ServTaxSHECessAmtCaptionLbl: Label 'Service Tax SHECess Amount';
VATDisctAmtCaptionLbl: Label 'Payment Discount on VAT';
LineDimsCaptionLbl: Label 'Line Dimensions';
VATAmtSpecCaptionLbl: Label 'VAT Amount Specification';
InvDiscBaseAmtCaptionLbl: Label 'Invoice Discount Base Amount';
ShipToAddrCaptionLbl: Label 'Ship-to Address';
PmtTermsCaptionLbl: Label 'Description';
GLAccNoCaptionLbl: Label 'G/L Account No.';
PrepmtSpecCaptionLbl: Label 'Prepayment Specification';
PrepmtVATAmtSpecCaptionLbl: Label 'Prepayment VAT Amount Specification';
InvDiscAmtCaptionLbl: Label 'Invoice Discount Amount';
VATPercentCaptionLbl: Label 'VAT %';
VATBaseCaptionLbl: Label 'VAT Base';
VATAmtCaptionLbl: Label 'VAT Amount';
LineAmtCaptionLbl: Label 'Line Amount';
VATIdentCaptionLbl: Label 'VAT Identifier';
TotalCaptionLbl: Label 'Total';
ShowRequestPage: Boolean;
ServTaxSBCAmtCaptionLbl: Label 'SBC Amount';
NNC_SalesLineSvcTaxSBCAmt: Decimal;
NNC_SalesLineKKCessAmt: Decimal;
KKCessAmtCaptionLbl: Label 'KK Cess Amount';
CompanyRegistrationLbl: Label 'Company Registration No.';
CustomerRegistrationLbl: Label 'Customer GST Reg No.';
IsGSTApplicable: Boolean;
j: Integer;
[Scope('Internal')]
procedure InitializeRequest(NoOfCopiesFrom: Integer; ShowInternalInfoFrom: Boolean; ArchiveDocumentFrom: Boolean; LogInteractionFrom: Boolean; PrintFrom: Boolean; DisplAsmInfo: Boolean)
begin
NoOfCopies := NoOfCopiesFrom;
ShowInternalInfo := ShowInternalInfoFrom;
ArchiveDocument := ArchiveDocumentFrom;
LogInteraction := LogInteractionFrom;
Print := PrintFrom;
DisplayAssemblyInformation := DisplAsmInfo;
end;
[Scope('Internal')]
procedure GetUnitOfMeasureDescr(UOMCode: Code[10]): Text[10]
var
UnitOfMeasure: Record "Unit of Measure";
begin
IF NOT UnitOfMeasure.GET(UOMCode) THEN
EXIT(UOMCode);
EXIT(UnitOfMeasure.Description);
end;
[Scope('Internal')]
procedure BlanksForIndent(): Text[10]
begin
EXIT(PADSTR('', 2, ' '));
end;
}