I checked RECALC VAR at the online help: https://www.rbase.com/support/rsyntax/rbgx5/recalc.html

It's been enhanced and is more comprehensive than I recall:
/When you use the RECALC command without any options, RECALC redisplays only the variable in the field that started the EEP, and recalculates only expressions using that variable. Use the VARIABLES option to force redisplay of all variables placed on the form and recalculation of all table expressions. Use the TABLES option to force recalculation of expressions in the other tables used in a multi-table form. The TABLES option recalculates lower tables only, not the current table.//
/
Thanks for the heads-up.
Doug

On 7/10/2020 12:44 PM, 'Karen Tellef' via RBASE-L wrote:
I recall when they added the ability to do a RECALC VAR of particular variables.  But I never heard that the command itself was obsolete.  I still use it for new forms I design


Karen



-----Original Message-----
From: Bruce Chitiea <[email protected]>
To: [email protected]
Sent: Fri, Jul 10, 2020 12:13 pm
Subject: Re[6]: [RBASE-L] - Variable Forms | Clearing Values within EEPs. | Thanks Buddy & Karen

Thanks, Javier

I've long accepted good practice to be:

*SET VAR vName DATATYPE = NULL*  - to create and explicitly datatype a variable, and  ...

*SET VAR vName = NULL* - to null a variable at the tail end of any "looping" code segment, anticipating generation of a new value, and ...

*CLEAR VAR [ v% | vName_1 ... vName_n ]* where there is but a limited number of variables, local to a routine, before the RETURN, or ...

*CLEAR ALL VAR EXCEPT gv%* where a  large number of variables, local to a routine, may be safely dispatched; while preserving the state of "global" variables, which must persist throughout an R:BASE session.

I "kinda" share your recollection re: *RECALC VAR.* Anyone?

Much appreciation, and warmest (July) regards, Bruce

Bruce A. Chitiea
SafeSectors, Inc.
-----------------------------------
112 Harvard Ave #272
Claremont CA 91711-4716
-----------------------------------
/[email protected]/
/-----------------------------------/
+011 (909) 238-9012 c
+011 (909) 912-8678 f



------ Original Message ------
From: [email protected] <mailto:[email protected]>
To: [email protected] <mailto:[email protected]>
Sent: 7/10/2020 9:14:34 AM
Subject: RE: Re[4]: [RBASE-L] - Variable Forms | Clearing Values within EEPs. | Thanks Buddy & Karen

First and as Karen indicated it is best to declare each variable separately rather than all variables together. I am not sure if
SET VAR = NULL
Is what you have in your code but the preferred/correct way is:
SET VAR vMy_Variable TYPE = NUL
Where “TYPE” is the type of your variable such as INT and so on
Next,
RECALC VAR
to the best of my recollection, stopped working a while back and now you have to specify the variable or variables you want recalculated:
RECALC VAR vMy_Variable
It is better coding practice anyway and easier to debug/TRACE since you can see if the value is being changed. I recall running into this specific problems but the changes above took care of it.
Javier,
Javier Valencia, PE
O: 913-829-0888
C: 913-915-3137
*From:*[email protected] <mailto:[email protected]> [mailto:[email protected] <mailto:[email protected]>] *On Behalf Of *Bruce Chitiea
*Sent:* Monday, July 06, 2020 9:41 AM
*To:* [email protected] <mailto:[email protected]>
*Subject:* Re[4]: [RBASE-L] - Variable Forms | Clearing Values within EEPs. | Thanks Buddy & Karen
Karen:
Thank you. You and Buddy are spot-on with RECALC VAR.
I suppose it helps that I NOT type RECALC *VARS*, which is why the mystery persisted beyond reason yesterday.
So, uh, I need to tighten my game. Apologies.
As for Forms of any stripe, I'm late to the party. But I like the idea, certainly in this early experimentation period, of total flexibility in inputting, until I have half a clue as to what I'm doing.
Always appreciate your help and experience, Bruce
Bruce A. Chitiea
SafeSectors, Inc.
-----------------------------------
112 Harvard Ave #272
Claremont CA 91711-4716
-----------------------------------
/[email protected] <mailto:[email protected]>/
/-----------------------------------/
+011 (909) 238-9012 c
+011 (909) 912-8678 f
------ Original Message ------
From: "'Karen Tellef' via RBASE-L" <[email protected] <mailto:[email protected]>> To: "[email protected] <mailto:[email protected]>" <[email protected] <mailto:[email protected]>>
Sent: 7/6/2020 5:46:24 AM
Subject: Re: Re[2]: [RBASE-L] - Variable Forms | Clearing Values within EEPs.

    Bruce: I do something like what you want, but with one difference.
    I design "search" forms all the time where there's a bunch of
    variable edits. Users type in values and it displays a grid with
    results of the search.
    I always put a "new search" button on the form that clears all
    those variables so the user can type in a new search.  All those
    variable edit fields are now blank.  This is the exact code from
    the button:
    SET VAR vSBLNo INT = NULL, vSPick INT = NULL, vBLWhere TEXT =
    'LIMIT = 0', +
      vSTranDate1 DATE = NULL, vSTranDate2 DATE = NULL, vSAcctNo INT
    = NULL, +
      vCAcctNo INT = NULL
    RECALC VAR
    I've never had this NOT work.
    The difference:  don't ask me why, but I have never used a
    "variable form". Never.  I always bind the form to a table,
    usually a "FormDummy" table that has a couple useless rows.
    Karen
    -----Original Message-----
    From: Bruce Chitiea <[email protected]
    <mailto:[email protected]>>
    To: [email protected] <mailto:[email protected]>
    Sent: Sun, Jul 5, 2020 7:12 pm
    Subject: Re[2]: [RBASE-L] - Variable Forms | Clearing Values
    within EEPs.
    Thank you, Buddy. On closer inspection, after I sent my message,
    I TRACED the variable subset as its values were NULLed just
    before the SETFOCUS.
    The RECALC VAR has no effect on this:
    What is in fact happening is that the DISPLAY of those variable
    values is not being cleared from their Variable Edit controls
    during the rotation.
    But when I Tab away from the first control in the Tab Order [a
    Variable Radio Group - one of the retained values ], the VE
    controls for the NULLed variables go blank, as intended.
    So the real question is: How does one blank the display of
    now-NULLed previous values within their associated controls?
    Much appreciated!
    Bruce A. Chitiea
    SafeSectors, Inc.
    -----------------------------------
    112 Harvard Ave #272
    Claremont CA 91711-4716
    -----------------------------------
    /[email protected] <mailto:[email protected]>/
    /-----------------------------------/
    +011 (909) 238-9012 c
    +011 (909) 912-8678 f
    ------ Original Message ------
    From: "Buddy Walker" <[email protected]
    <mailto:[email protected]>>
    To: [email protected] <mailto:[email protected]>
    Sent: 7/5/2020 4:43:38 PM
    Subject: Re: [RBASE-L] - Variable Forms | Clearing Values within
    EEPs.

        Bruce
        Have you tried RECALC VAR after settling them to null and
        before the setfocus
        Buddy
        Sent from my iPhone


        On Jul 5, 2020, at 6:24 PM, Bruce Chitiea
        <[email protected] <mailto:[email protected]>> wrote:

            
            RGBX5E Current
            Fairly new to Forms.
            A Variable Form provides values to an On Click EEP in a
            Bit Button. The EEP succeeds at its tasks, then returns
            FOCUS to the first control in the Form's Tab Order, as
            intended.
            One subset of variable values survive the rotation, as
            intended. A second subset of variable values must be
            NULLed during the rotation, so that their associated
            controls are blank when the Form reappears.
            I've failed to clear this latter group of values,
            variably using CLEAR VAR and SET VAR = NULL commands:
            (a) ahead of the SETFOCUS  at the tail end of the Bit
            Button's On Click EEP;
            (b) in the Bit Button's On Exit EEP;
            (c) in the On After Start EEP of the form itself.
            It's gottta be something basic.
            What is the established procedure for clearing a subset
            of variable values when rotating directly back into a
            form from a prior instance?
            Rockets Red Glare, Bruce
            Bruce A. Chitiea
            SafeSectors, Inc.
            -----------------------------------
            112 Harvard Ave #272
            Claremont CA 91711-4716
            -----------------------------------
            /[email protected] <mailto:[email protected]>/
            /-----------------------------------/
            +011 (909) 238-9012 c
            +011 (909) 912-8678 f
-- For group guidelines, visit
            http://www.rbase.com/support/usersgroup_guidelines.php
            ---
            You received this message because you are subscribed to
            the Google Groups "RBASE-L" group.
            To unsubscribe from this group and stop receiving emails
            from it, send an email to
            [email protected]
            <mailto:[email protected]>.
            To view this discussion on the web visit
            
https://groups.google.com/d/msgid/rbase-l/emefe264b1-e9f3-4ab0-9473-d2851d506e75%40pathfinder
            
<https://groups.google.com/d/msgid/rbase-l/emefe264b1-e9f3-4ab0-9473-d2851d506e75%40pathfinder?utm_medium=email&utm_source=footer>.

-- For group guidelines, visit
    http://www.rbase.com/support/usersgroup_guidelines.php
    ---
    You received this message because you are subscribed to the
    Google Groups "RBASE-L" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to [email protected]
    <mailto:[email protected]>.
    To view this discussion on the web visit
    
https://groups.google.com/d/msgid/rbase-l/0664CAAD-6C9D-4CD1-B29B-99260ED49DDE%40comcast.net
    
<https://groups.google.com/d/msgid/rbase-l/0664CAAD-6C9D-4CD1-B29B-99260ED49DDE%40comcast.net?utm_medium=email&utm_source=footer>.

-- For group guidelines, visit
    http://www.rbase.com/support/usersgroup_guidelines.php
    ---
    You received this message because you are subscribed to the
    Google Groups "RBASE-L" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to [email protected]
    <mailto:[email protected]>.
    To view this discussion on the web visit
    
https://groups.google.com/d/msgid/rbase-l/em0f0095d9-e3fa-47ce-861b-c31e0f8cfc28%40pathfinder
    
<https://groups.google.com/d/msgid/rbase-l/em0f0095d9-e3fa-47ce-861b-c31e0f8cfc28%40pathfinder?utm_medium=email&utm_source=footer>

    .
-- For group guidelines, visit
    http://www.rbase.com/support/usersgroup_guidelines.php
    ---
    You received this message because you are subscribed to the
    Google Groups "RBASE-L" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to [email protected]
    <mailto:[email protected]>.
    To view this discussion on the web visit
    
https://groups.google.com/d/msgid/rbase-l/1427247731.2076657.1594039584665%40mail.yahoo.com
    
<https://groups.google.com/d/msgid/rbase-l/1427247731.2076657.1594039584665%40mail.yahoo.com?utm_medium=email&utm_source=footer>.

--
For group guidelines, visit http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to the Google Groups "RBASE-L" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/rbase-l/em8c6f18fc-b4e6-45b9-887c-15594068e982%40pathfinder <https://groups.google.com/d/msgid/rbase-l/em8c6f18fc-b4e6-45b9-887c-15594068e982%40pathfinder?utm_medium=email&utm_source=footer>.
--
For group guidelines, visit http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to the Google Groups "RBASE-L" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/rbase-l/!%26!AAAAAAAAAAAYAAAAAAAAAO1ueGVb5zRMiwo7hebUe7jCgAAAEAAAANVLiGDec0VNuPz8YEIjXK4BAAAAAA%3D%3D%40vtgonline.com <https://groups.google.com/d/msgid/rbase-l/!%26!AAAAAAAAAAAYAAAAAAAAAO1ueGVb5zRMiwo7hebUe7jCgAAAEAAAANVLiGDec0VNuPz8YEIjXK4BAAAAAA%3D%3D%40vtgonline.com?utm_medium=email&utm_source=footer>.
--
For group guidelines, visit http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to the Google Groups "RBASE-L" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/rbase-l/emcbd6db3f-6bdc-4196-a08d-4f38b25d3069%40pathfinder <https://groups.google.com/d/msgid/rbase-l/emcbd6db3f-6bdc-4196-a08d-4f38b25d3069%40pathfinder?utm_medium=email&utm_source=footer>.
--
For group guidelines, visit http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to the Google Groups "RBASE-L" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:[email protected]>. To view this discussion on the web visit https://groups.google.com/d/msgid/rbase-l/807091847.4477930.1594403092736%40mail.yahoo.com <https://groups.google.com/d/msgid/rbase-l/807091847.4477930.1594403092736%40mail.yahoo.com?utm_medium=email&utm_source=footer>.



--
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

--
For group guidelines, visit 
http://www.rbase.com/support/usersgroup_guidelines.php
--- You received this message because you are subscribed to the Google Groups "RBASE-L" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rbase-l/550e4efe-3ad6-0d61-39c5-8e239aec0b0c%40wi.rr.com.

Reply via email to