Hi Experts
Transfer cash payment journal from company "A" to company "B",but my dimension that was set in company "A" was not set as in company B,Belows are my codes
//Nspl-1.0-CC.ns
RecGenJournalLine.RESET;
RecGenJournalLine.SETCURRENTKEY("Journal Template Name","Journal Batch Name","Journal Line No.");
RecGenJournalLine.SETRANGE("Journal Template Name",GenJournalLine."Journal Template Name");
RecGenJournalLine.SETRANGE("Journal Batch Name",GenJournalLine."Journal Batch Name");
RecGenJournalLine.SETRANGE("Copy To Company",TRUE);
IF RecGenJournalLine.FINDSET THEN BEGIN
IF ( CompanyInformation.GET ) AND (CompanyInformation."Copy To Company" <> '') THEN BEGIN
IF GenJournalTemplate.CHANGECOMPANY(CompanyInformation."Copy To Company") THEN
IF NOT GenJournalTemplate.GET(GenJournalLine."Journal Template Name") THEN
ERROR(ErrTxt,GenJournalLine."Journal Template Name",CompanyInformation."Copy To Company");
IF GenJournalBatch.CHANGECOMPANY(CompanyInformation."Copy To Company") THEN
IF NOT GenJournalBatch.GET(GenJournalLine."Journal Template Name",'DEFAULT') THEN
ERROR(ErrTxt,GenJournalLine."Journal Batch Name",CompanyInformation."Copy To Company");
GeneralLedgerSetup.CHANGECOMPANY(CompanyInformation."Copy To Company");//ja
IF GeneralLedgerSetup.GET THEN ;//ja
REPEAT
AccountsGenJournalLine.CHANGECOMPANY(CompanyInformation."Copy To Company");
AccountsGenJournalLine.INIT;
AccountsGenJournalLine.VALIDATE("Journal Template Name",GenJournalBatch."Journal Template Name");//Nspl-1.-CC.n
AccountsGenJournalLine.VALIDATE("Journal Batch Name",GenJournalBatch.Name);
AccountsGenJournalLine.VALIDATE("Line No.",RecGenJournalLine."Line No.");
AccountsGenJournalLine.VALIDATE("Account Type",RecGenJournalLine."Account Type");
AccountsGenJournalLine.VALIDATE("Account No.",RecGenJournalLine."Account No.");
AccountsGenJournalLine.VALIDATE("Posting Date",RecGenJournalLine."Posting Date");
AccountsGenJournalLine.VALIDATE("Document Type",RecGenJournalLine."Document Type");
AccountsGenJournalLine.VALIDATE("Document No.",RecGenJournalLine."Document No.");
AccountsGenJournalLine.VALIDATE(Description,RecGenJournalLine.Description);
AccountsGenJournalLine.VALIDATE("Bal. Account No.",RecGenJournalLine."Bal. Account No.");
AccountsGenJournalLine.VALIDATE("Currency Code",RecGenJournalLine."Currency Code");
AccountsGenJournalLine.VALIDATE(Amount,RecGenJournalLine.Amount);
IF RecGenJournalLine."Credit Amount" <> 0 THEN
AccountsGenJournalLine.VALIDATE("Debit Amount",RecGenJournalLine."Credit Amount");
IF RecGenJournalLine."Debit Amount" <> 0 THEN
AccountsGenJournalLine.VALIDATE("Credit Amount",RecGenJournalLine."Debit Amount");
AccountsGenJournalLine.VALIDATE("Currency Factor",RecGenJournalLine."Currency Factor");
AccountsGenJournalLine.VALIDATE("Source Code",RecGenJournalLine."Source Code");
AccountsGenJournalLine.VALIDATE("Reason Code",RecGenJournalLine."Reason Code");
AccountsGenJournalLine.VALIDATE("Gen. Posting Type",RecGenJournalLine."Gen. Posting Type");
AccountsGenJournalLine.VALIDATE("Gen. Bus. Posting Group",RecGenJournalLine."Gen. Bus. Posting Group");
AccountsGenJournalLine.VALIDATE("Gen. Prod. Posting Group",RecGenJournalLine."Gen. Prod. Posting Group");
AccountsGenJournalLine.VALIDATE("Document Date",RecGenJournalLine."Document Date");
AccountsGenJournalLine.VALIDATE("External Document No.",RecGenJournalLine."External Document No.");
AccountsGenJournalLine.VALIDATE("Source Type",RecGenJournalLine."Source Type");
AccountsGenJournalLine.VALIDATE("Source No.",RecGenJournalLine."Source No.");
AccountsGenJournalLine.VALIDATE("Created By",RecGenJournalLine."Created By");
AccountsGenJournalLine.VALIDATE("Creatd On",RecGenJournalLine."Creatd On");
AccountsGenJournalLine.VALIDATE("Lot No.",RecGenJournalLine."Lot No.");
AccountsGenJournalLine.VALIDATE("Employee Code",RecGenJournalLine."Employee Code");
AccountsGenJournalLine.VALIDATE("Employee Name",RecGenJournalLine."Employee Name");
AccountsGenJournalLine.VALIDATE("Reason Text",RecGenJournalLine."Reason Text");
AccountsGenJournalLine.VALIDATE("PO No.",RecGenJournalLine."PO No.");
AccountsGenJournalLine.VALIDATE("Rate Chart Code",RecGenJournalLine."Rate Chart Code");
AccountsGenJournalLine.VALIDATE("Responsibility Center",RecGenJournalLine."Responsibility Center");
AccountsGenJournalLine.VALIDATE("Location Code",RecGenJournalLine."Location Code");
//Insert Into Dimension into Accounts Test company
DimensionValue.CHANGECOMPANY(CompanyInformation."Copy To Company");
IF DimensionValue.GET(GeneralLedgerSetup."Global Dimension 1 Code",RecGenJournalLine."Shortcut Dimension 1 Code") THEN BEGIN
DimensionSetEntry.CHANGECOMPANY(CompanyInformation."Copy To Company");
DimensionSetEntry.INIT;
DimensionSetEntry.VALIDATE("Dimension Code",DimensionValue."Dimension Code");
DimensionSetEntry.VALIDATE("Dimension Value Code",DimensionValue.Code);
DimensionSetEntry."Dimension Value ID" := DimensionValue."Dimension Value ID";
DimensionSetEntry.INSERT;
END;
DimensionValue.CHANGECOMPANY(CompanyInformation."Copy To Company");
IF DimensionValue.GET(GeneralLedgerSetup."Global Dimension 2 Code",RecGenJournalLine."Shortcut Dimension 2 Code") THEN BEGIN
DimensionSetEntry.CHANGECOMPANY(CompanyInformation."Copy To Company");
DimensionSetEntry.INIT;
DimensionSetEntry.VALIDATE("Dimension Code",DimensionValue."Dimension Code");
DimensionSetEntry.VALIDATE("Dimension Value Code",DimensionValue.Code);
DimensionSetEntry."Dimension Value ID" := DimensionValue."Dimension Value ID";
DimensionSetEntry.INSERT;
END;
//AccountsGenJournalLine."Shortcut Dimension 1 Code",RecGenJournalLine."Shortcut Dimension 1 Code");
//AccountsGenJournalLine.VALIDATE("Shortcut Dimension 2 Code",RecGenJournalLine."Shortcut Dimension 2 Code");
AccountsGenJournalLine."Dimension Set ID":=DimensionManagement.GetDimensionSetID(DimensionSetEntry);
AccountsGenJournalLine.INSERT;
UNTIL RecGenJournalLine.NEXT =0;
END;
END
//Nspl-1.0-CC.ne
please help
*This post is locked for comments