Variable not retaining value.......

Discussion in 'Tally Developer' started by Amit Kamdar, Dec 14, 2018.

    
  1. Amit Kamdar

    Amit Kamdar Administrator Staff Member


    Am not able to retain the value......... Can Anyone suggest a solution??

    When report is being opened, it starts with value "0" (zero).... I have to open the sub-form and input value. The subform retains the previous value. But the report does not. So everytime the report opens, it starts with zero value as default.

    I've made a dummy field within the sub-form and it also picks up the value. But this value is not available outside the form. Also tried setting "system Variables".


    Code:
    [Report : LedgerDisplayFi1]
        Variable        : SchemeSelect
    
            [Field : ColorSchemesSelectV]
                Use            : Number Field
                Set As        : $$Value
                Set Always    : Yes
                Modifies    : SchemeSelect
                Width        : 10
                Align        : Centre
                Style        : Large Bold
                Storage        : SelectColor
                Validate    : $$Value >= 0 AND $$Value <= 9
    
    [Variable : SchemeSelect]
        Type        : Number
        Set Always    : Yes
        Volatile    : Yes
        Persistent    : Yes
        Default        : @@ColorValue
    
    [System : UDF]
        SelectColor    : Number    : 22709
    
    [System : Formula]
        ColorValue        :     ##SchemeSelect
     
    Last edited: Dec 14, 2018
    Jaydeep Shah likes this.


  2. hprahul

    hprahul Member


    Dear Amit ji,

    in one of my case what I did was- created a dummy report and attached variable to it. and deleted variable from the main report but modified same in form:

    Thus:

    [Report : DummyReport]
    Variable : SchemeSelect

    [Report : LedgerDisplayFi1]
    ; Variable : SchemeSelect

    I hope this workaround works for you even...
     


  3. Amit Kamdar

    Amit Kamdar Administrator Staff Member


    Dear Rahul,

    Many thanks. Am sure your solution will be handy to me one day in some other ways.

    But here I was sort of having a "circular reference" problem and hence variable was reverting to zero. sort of like multiplying by zero. :)

    My problem has been solved since long..... by specifying the variable in the local FORM level as suggested to me by member Garima.
     


  4. svn

    svn Member


    i am not able to upload image.

    admin please help me.

    can u help for bellow problem


    gross amount- 1000
    sgst - 90
    cgst-90
    round off -
    invoice amount - 1180

    i dont want for round off ledger when its not filled in sales invoice.
    is there any code for it.
    invisible - ?
     


  5. Amit Kamdar

    Amit Kamdar Administrator Staff Member


    are you using pre-defined ledgers for faster entry??
     


  6. svn

    svn Member


    yes sir,
     


  7. Amit Kamdar

    Amit Kamdar Administrator Staff Member


    Then remove it from there....... and use the ROUNDOFF ledger only if required............

    for simple things you are trying to go a roundabout and long way to solve your problem.
     


  8. svn

    svn Member


    sorry sir,
    i have sgst@2.5
    cgst@2.5
    sgst@6
    cgst@6
    sgst@9
    cgst@9
    sgst@14
    cgst@14
    igst@5
    igst@12
    igst@18
    igst@28
    then i take one stock item for only igst@5%,then automatically above all ledgers .
    so we want only igst@5% ledgser ,we dont want remaining ledger in print.
    i think ivisible code is ?????????????
    thank you for ur early reply.
     


  9. Amit Kamdar

    Amit Kamdar Administrator Staff Member


    You should specify default Ledger allocation for Invoicing in the Stock Item.

    In Stock Item Master, press F12 and activate this feature.......... then according to the stock item only the relevant ledger will be selected.
     


  10. svn

    svn Member


    sir
    sir is there any another option.i want invisible code.incase you know that please share with me.


    [Part:OTSLedgerEnteries]
    Line:OTSLedgerEnteries
    Repeat:OTSLedgerEnteries:Ledger Entries
    Border: Thick Left
    Common Border: Yes
    ;Scroll: Vertical
    Float: No



    [Line:OTSLedgerEnteries]
    Field: OTSLedgerName, OTSLedgerPercentage,OTSPercentageSing, OTSLedgerAmount
    Remove if: $LedgerName = $PartyLedgerName


    [Field:OTSLedgerName]
    Set as : if ##SATCSDetails AND @@TaxLedgerHasTCS then $$LocaleString:"TCS : Income Tax" else +
    if NOT $$IsSysName:$LedgerName then $LedgerName else "" ;;; used to print on invoice

    Style:p9B
    Align : Right
    FullWidth : Yes
    AbatementVal: If $$Number:$STXAbatementRate = 0 Then $$String:"0" Else $$String:$STXAbatementRate
    LedNarr : (@@IsSales AND ##SALedgerNarr) OR (@@IsPurchase AND ##PULedgerNarr) AND $$Filtercount:LedgerEntries:LedgerNarrFltr > 0
    Option : LeftAlignField : @@AcctsInvoice
    Width:16

    [Field:OTSLedgerPercentage]
    Use : Rate Price Field
    Type : Number
    Align : Right
    Format : "NoZero,Decimals:-1"
    Style:p9
    Set as : if ##SATCSDetails AND @@TaxLedgerHasTCS AND NOT $$IsSysName:$TDSRateName:Ledger:$LedgerName then @@TCSITTaxRate else +
    $BasicRateOfInvoiceTax
    Inactive : $$IsSysName:$LedgerName
    Invisible : NOT @@InvWithRate

    Width: 4

    [Field:OTSPercentageSing]
    Set as:if $$IsEmpty:$BasicRateOfInvoiceTax then "" else "%"
    Set By Condition : @@TaxLedgerHasTCS AND NOT ($$IsSysName:$TDSRateName:Ledger:$LedgerName) : If $$IsEmpty:mad:@TCSITTaxRate Then "" Else "%"
    Inactive : $$IsSysName:$LedgerName
    Invisible : NOT @@InvWithRate
    Width: 2
    Style:p9

    [Field:OTSLedgerAmount]
    Use : Amount Forex Field
    Set as : $$SignedAmount:$Amount:mad:@VchOpposite
    Border: Thick Left
    Align: Right
    Width: 10
    Style:p9
     


  11. Amit Kamdar

    Amit Kamdar Administrator Staff Member


    Instead of Invisible............ in LINE level define............. Remove If : $$IsEmpty
     


  12. svn

    svn Member


    sorry sir,

    it's not working.
     


Share This Page