Using UDF in cheque printing

Discussion in 'Tally Developer' started by Mansur Kalyankar, Feb 1, 2013.

    
  1. Mansur Kalyankar

    Mansur Kalyankar New Member


    Dear Experts,

    I have created an UDF which I am able to capture & store through voucher entry code is as below:

    [System : UDF]
    ChequeIssuePlace : String : 21001

    ;;To add place of issue
    [#Part: Vch Bank Allocations Cheque Exp]
    Line : Additional Cheque Details

    [Line : Additional Cheque Details]
    Field : Simple Prompt, VCH Issue Place Title
    Field : Medium Prompt, VCH Issue Place
    [Field: VCH Issue Place Title]
    Info : $$LocaleString:"Issue Place" + ":"
    Style : Small Bold
    Indent : 4

    [Field: VCH Issue Place]
    Use : Name Field
    Inactive : NOT @@IsVchBankAllocCheque OR $$IsDr: @@OwnerAmt
    Storage : ChequeIssuePlace
    Set as : If $$InCreateMode Then $$LocaleString:"" Else $ChequeIssuePlace
    Set Always : Yes
    Style : Small
    Width : 12


    I want to print this field below "Date" (as required by the bank), I am unable to retrieve the field while printing the cheque. I am trying to use the following code:
    [#Line : PCDate]
    Add : Field : After : PCDate : IssuePlace
    [Field : IssuePlace]
    Set as : $ChequeIssuePlace (I tried using "Info" instead of "Set as")
    Space Left : 30 mms
    Style : Normal Bold


    Thanks in advance.
    -Mansur
     


  2. Mansur Kalyankar

    Mansur Kalyankar New Member


    P.S.: I want to use list for the UDF [VCH Issue Place] for which I tried using the following (additional code, highlighted in RED) but its not working:

    [Field: VCH Issue Place]
    Use : Name Field
    Inactive : NOT @@IsVchBankAllocCheque OR $$IsDr: @@OwnerAmt
    Storage : ChequeIssuePlace
    Table : Vch Cheque Issue Place
    Show Table : Always
    Set as : If $$InCreateMode Then $$CollectionString:"" Else $ChequeIssuePlace
    Set Always : Yes
    Style : Small
    Width : 12
    [Collection: Vch Cheque Issue Place]
    Title : $$LocaleString:"List of Issue Places"
    ListName : $$Sysname: Place1
    ListName : $$Sysname: Place2
    ListName : $$Sysname: Place3
    Format : $Name, 25
    Align : Right
    FullHeight : Yes
     


  3. Ritesh Mehta

    Ritesh Mehta New Member


    Dear Mansur,

    Your Code :
    [#Line : PCDate]
    Add : Field : After : PCDate : IssuePlace
    [Field : IssuePlace]
    Set as : $ChequeIssuePlace (I tried using "Info" instead of "Set as")
    Space Left : 30 mms
    Style : Normal Bold
    Kindly do changes as per bellow new code and check.
    [#Part : PCDate]
    Add : Bottom Line : After : PcDate : IssuePlace
    [Line : IssuePlace]
    Field : IssuePlace
    [Field : IssuePlace]
    Set as : $$CollectionField:$ChequeIssuePlace:1:BankPymtAdviceChequeDetails
    Space Left : 30 mms
    Style : Normal Bold

    [#Collection: BankPymtAdvice AllChequeDetails]
    Fetch : ChequeIssuePlace

    Hope you get solution with above codes.

    Ritesh
     
    Mansur Kalyankar likes this.


  4. Mansur Kalyankar

    Mansur Kalyankar New Member


    Hi Rithesh,

    Thanks for the code correction, retrieving the data works fine. Still needed to amend it a little, otherwise the Date & Issue place was getting crushed in 1 line, see below - works fine:

    ;;To increase the height by 5 mm
    [#Part: PCTop]
    Height : ($$Cheque:ChequeDateBottom:#PCBankName:##SVCurrentCompany - @@TopClip + 5) mms

    [#Part : PCDate]
    Add : Bottom Line : After : PcDate : IssuePlace
    [Line : IssuePlace]
    Field : IssuePlace
    [Field : IssuePlace]
    Set as : $$CollectionField:$ChequeIssuePlace:1:BankPymtAdviceChequeDetails
    ;;Space Left : 30 mms
    Style : Normal Bold

    [#Collection: BankPymtAdvice AllChequeDetails]
    Fetch : ChequeIssuePlace

    I am trying to put an option in cheque configuration to use Issue Place & increase the PCTop height, hope I succeed.

    Can you also advise how can I use collection option to give list of issue places? I have used the following but not working.

    [Field: VCH Issue Place]
    Use : Name Field
    Inactive : NOT @@IsVchBankAllocCheque OR $$IsDr: @@OwnerAmt
    Storage : ChequeIssuePlace
    Table : Vch Cheque Issue Place
    Show Table : Always
    Set as : If $$InCreateMode Then $$CollectionString:"" Else $ChequeIssuePlace
    Set Always : Yes
    Style : Small
    Width : 12
    [Collection: Vch Cheque Issue Place]
    Title : $$LocaleString:"List of Issue Places"
    ListName : $$Sysname: Place1
    ListName : $$Sysname: Place2
    ListName : $$Sysname: Place3
    Format : $Name, 25
    Align : Right
    FullHeight : Yes
     


  5. Ritesh Mehta

    Ritesh Mehta New Member


    Dear Mansur,

    Try with bellow code.

    [#Part : Vch Bank Allocations Cheque Exp]
    Line : Additional Cheque Details

    [Line : Additional Cheque Details]
    Field : Medium Prompt, VCH Issue Place
    Local : Field : Medium Prompt : Info : $$LocaleString:"Issue Place" + ":"
    Local : Field : Medium Prompt : Indent : 4
    Local : Field : Medium Prompt : Style : Normal Bold

    [Field : VCH Issue Place]
    Use : Name Field
    Table : Vch Cheque Issue Place
    Storage : ChequeIssuePlace
    Style : Small
    Width : 20
    Set Always : Yes
    Show Table : Always
    Inactive : NOT @@IsVchBankAllocCheque OR $$IsDr:mad:@OwnerAmt

    [Collection : Vch Cheque Issue Place]
    Title : $$LocaleString:"List of Issue Places"
    ListName : @@L1
    ListName : @@L2
    ListName : @@L3
    Format : $Name, 25
    Align : Right
    FullHeight : Yes

    ;; Use system formula to get listname
    [System : Formula]
    L1 : "Place1"
    L2 : "Place2"
    L3 : "Place3"
    Regards,

    Ritesh
     


  6. Mansur Kalyankar

    Mansur Kalyankar New Member


    Dear Ritesh, you are a genius!

    Would need your help further, will get in touch with you. Thanks dear!
     


  7. Mansur Kalyankar

    Mansur Kalyankar New Member



Share This Page