Presentation is loading. Please wait.

Presentation is loading. Please wait.

Methods of printing checks Customizing a checks layout Paying by checks process.

Similar presentations


Presentation on theme: "Methods of printing checks Customizing a checks layout Paying by checks process."— Presentation transcript:

1

2 Methods of printing checks Customizing a checks layout Paying by checks process

3 Blank (self generated) Pre printed Pros: Easier for use- generates check numbers, easy voiding Flexible for multi bank accounts (no need to change paper) Check doesnt exist until printing Cheaper for maintenance (?) Pros: Special graphics Security measures: watermarks, UV, graphics, etc. No need for additional H/W or S/W No need for design efforts Cons: Graphics less sophisticated Less hard securities against frauds Special printer/ink cartridge Cons: Hard to maintain multi check accounts Requires special care of check numbers Offsetting text for every check layout Costs / efforts working with check issuer (bank or printing house

4 Blank (self generated) AX only Requires layout design Using build-in features (logo, MICR line) Special H/W is required 3 rd party No design, only output file 3 rd party Vendor responsible for both H/W and S/W

5 Setup Define check layout per bank account Check number method Method of payment Manage View checks Create checks Delete checks Pay Create payment Generate payment Void checks

6 Bank > Common Forms > Bank Accounts Details > Setup > Check layout Use this form to set up the layout of checks for the bank account that you selected in the Bank accounts form.

7 Select the method to use for generating check numbers: Fixed – Use this method when you have pre-printed checks. Before you can use checks for payment, it is necessary to create them by clicking Functions > Create checks in the Bank accounts form. Free – Use this method when you do not have pre-printed checks. Microsoft Dynamics AX automatically proposes check numbers when you use checks for payment.

8 Select bank account Go to checks Create checks

9 In payment line: Functions > Generate payments. Select the correct method of payment for checks. Select the correct bank account in the Bank account field. Click Dialog. the first check number are automatically filled in.

10 Fundamental changes The basic customizations need to be done once regardless of the number of layouts Per-layout changes The customizations required for each check layout

11 Add layouts names to Check form dropdown Numbers to words algorithm (optional) Add custom fields (such as withholding tax) to the report temp table

12 Goal: add the check form to the list: How: Add the form name to ChequeFormType Base Enum for each bank

13 Goal: add further information (such as describing the goods or WHT info): How: Add additional data fields to the Check data source Temp Table TmpChequePrintout

14 Goal: Print check amount in words in Hebrew. How: Add a method numeralsToTxt_IL() to class Global This is optional. Suggested methods code (open source) can be found in mAXimum ERP site at: Note: The code is published as-is without any tests. You are invite to improve and contribute to the AX community in Israel You are encouraged to discuss and share ideas in our discussions forum at Linkedin

15 My check form Custom Position/Size of text Custom data elements Report layout design Custom language

16 \CustVendCheque\slipTxtLines: Case Custom Position/Size of text \CustVendCheque\FillSlipTxt: Case Fill in additional data elements \CustVendCheque\Output Case tmpChequePrintout.Numerals2letter:=numeralsToTxt_IL(amount ) Print amount in Hebrew

17 \BankChequePrint\PrintDocument Case Call the layout corresponding report Class BankPrintTestCheque Print a testing output And, additionally- how to visually test your design

18

19

20 Set up a method of payment for checks Click Accounts payable > Setup > Payment > Methods of payment. On the Overview tab, press CTRL+N to create a new line. Enter an appropriate identifier, such as Check, in the Method of payment field. Enter other information, as needed, for the method of payment. Click the File formats tab. In the Export format field, select Check.

21

22 Customization BankPrintTestCheque Class CustVendCheque Class BankChequePrint Class New report for check layout New Output Menu item

23 Customization BankPrintTestCheque – Used for the test printout of the check. Methods createTestCheque() and printCheque() should be modified createTestCheque() setting the check layout and New fields values case ChequeFormType::ILStyle : chequeDocMm = 65.02; break; if (bankChequeLayout.ChequeFormType == ChequeFormType::ILStyle) { tmpChequePrintout.SlipTop1 = 6500; slipTextAreaMm = areaAboveCheque ; } case ChequeFormType::ILStyle : TmpChequePrintout.IL_WithholdBaseAmount = ; TmpChequePrintout.IL_WithholdTax = ; if (bankChequeLayout.AmountPrefix) { tmpChequePrintout.AmountTxt = strfmt('%1%2',bankChequeLayout.AmountPrefix, tmpChequePrintout.AmountCur); } else { tmpChequePrintout.AmountTxt = strfmt('%1',tmpChequePrintout.AmountCur); } tmpChequePrintout.SlipTxt = strfmt('%1 %2 %3 %4 %5 %6\n', slipLineMax -= 4; break;

24 Customization printCheque() calling the Cheque_IL report to be printed. case ChequeFormType::ILStyle : new MenuFunction(menuitemoutputstr(Cheque_IL),MenuItemType::Output).run(args); break;

25 Customization CustVendCheque - Used for the setting the data for printout of the check. Methods outPut(), slipTxtLines() and fillSlipTxt() should be modified outPut() case ChequeFormType::ILStyle : tmpChequePrintout.IL_AccountNum = vendTable.AccountNum; tmpChequePrintout.Numerals2Letter = amountCur != 0 ? numeralsToTxt_EN(amountCur) : ''; if (bankChequeLayout.AmountPrefix) { tmpChequePrintout.AmountTxt = strfmt('%1%2',bankChequeLayout.AmountPrefix, amountCur); } else { tmpChequePrintout.AmountTxt = strfmt('%1', amountCur); } break; slipTxtLines() : case ChequeFormType::ILStyle : chequeDocMm = 65.02; if (_bankChequeLayout.ChequeFormType == ChequeFormType::ILStyle) { slipTop1 = 6500; slipTextAreaMm = areaAboveCheque ; }

26 Customization fillSlipTxt(): AmountCur withholdTax; AmountCur withholdBaseAmount; AmountCur totalWithholdBaseAmount; TaxWithholdTrans taxWithholdTrans; TaxWithholdCode taxWithholdCode; case ChequeFormType::ILStyle : chequeSlipTxt = ""; while select taxWithholdTrans where taxWithholdTrans.SpecTransId == specTrans.RecId { totalWithholdBaseAmount += taxWithholdTrans.PaymWithholdBaseAmount; withholdTax += taxWithholdTrans.PaymTaxWithholdAmount; taxWithholdCode = taxWithholdTrans.TaxWithholdCode; } withholdBaseAmount = 0; while select taxWithholdTrans where taxWithholdTrans.SpecTransId == specTrans.RecId { withholdBaseAmount += taxWithholdTrans.PaymWithholdBaseAmount; } chequeSlipTxt += strfmt('%1 %2' + strrep(' ',40) +' %3 %4\r\n', strLRTrim(_ledgerJournalTrans.CurrencyCode), strLRTrim(num2str(withholdBaseAmount, 16, 2, -1, -1)), strLFix(vendTrans.Invoice,15), _ledgerJournalTrans.Txt); if (!totalPrinted && totalLines == lines && _chequeFormType == ChequeFormType::ILStyle) { tmpChequePrintout.IL_WithholdBaseAmount = totalWithholdBaseAmount; tmpChequePrintout.IL_WithholdTax = withholdTax; tmpChequePrintout.IL_TaxWithholdCode = taxWithholdCode; }

27 Customization Class BankChequePrint printDocument() case ChequeFormType::ILStyle : this.runReport(menuitemoutputstr(Cheque_IL)); break; New report and Output menu should be created


Download ppt "Methods of printing checks Customizing a checks layout Paying by checks process."

Similar presentations


Ads by Google