T24:Setting sub value field

5,772 views
Skip to first unread message

Ahmet Baysa

unread,
Sep 23, 2011, 12:13:47 PM9/23/11
to jB...@googlegroups.com

Hi,

I would like to set field properties of a sub value during the input of another field but not succeeded. I explain:

CUSTOMER table has a group of Multi value LOCAL Fields

PRODUCT, EVALUATION and DATE

These are three multivalue LOCAL Fields and they are in same Group.


Each fiels has three values

PRODUCT = A , B, C
EVALUATION = 5,4,6
DATE = 2011, 2012, 2015

I would like to write a validation routine on EVALUATION in order to control the "NOINPUT" of the corresponded DATE value in the DATE field.

Let's say; if 2nd value of the EVALUATION field has value "4" then second value of the DATE field should be "NOINPUT"

I am inputting the second value  of the EVALUATION field on the screen. Then validation routine runs....

IF COMI EQ "4" THEN

    T(R.NEW(EB.CUS.LOCAL.REF)<1,POSITION.OF.DATE.FIELD,2>)<3> = "NOINPUT"

END


Is this the syntax to fetch and set the  properties of the DATE field?


Thanks,




VK

unread,
Sep 26, 2011, 3:23:04 AM9/26/11
to jBASE
Hi,
I don't think you can make some subvalue NOINPUT without affecting
other subvalues.

Generally it's not a good idea to change field properties on-the-fly;
however something like that might work on Desktop. If you use Browser
you're probably out of luck since it takes all VERSION properties from
the server every time the communication takes place. That I was told
but never tried out so I might be wrong here. You can try to amend
R.VERSION as well to make all field NOINPUT if you like (though I
still don't recommend that).

You might better (supposing that it's something local) rearrange the
data. If you can't - introduce a cross-field check if second value of
the DATE has changed when EVALUATION is 4.

VK

Igor Micev

unread,
Sep 26, 2011, 6:41:21 AM9/26/11
to jb...@googlegroups.com
Hi,
Even on Desktop it won't work always. It works only for some modules. I don't know why is that.
However, there is a solution.
You can play with R.NEW() and R.OLD() arrays values of the fields, regardless of the INPUT field's type.
For example:
IF COMI = '4' THEN
  R.NEW(EB.CUS.LOCAL.REF)<1,POSITION.OF.DATE.FIELD,2>) = R.OLD(EB.CUS.LOCAL.REF)<1,POSITION.OF.DATE.FIELD,2>)<1,POSITION.OF.DATE.FIELD,2>)
  ETEXT = 'Sorry, you cannot change this field data under a condition ...'  
END

You should also consider empty fields for a fist input.

Igor

--
Please read the posting guidelines at: http://groups.google.com/group/jBASE/web/Posting%20Guidelines

IMPORTANT: Type T24: at the start of the subject line for questions specific to Globus/T24

To post, send email to jB...@googlegroups.com
To unsubscribe, send email to jBASE-un...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/jBASE?hl=en



--
Igor Micev

Srinivas

unread,
Sep 27, 2011, 5:50:04 AM9/27/11
to jb...@googlegroups.com
Hi,
 
If its a local ref element , then make use of the common variable T.LOCREF to set the field to NOINPUT
 
Regards,
 
Srinivas

Regards

SrinivasYadav. G
Mobile No: 00966 - 540625165

Ahmed Ali Nisar

unread,
Sep 26, 2011, 7:51:46 AM9/26/11
to jb...@googlegroups.com
Hi All,
  Well while doing template programming we came across a T array where we set the field properties like drop down, Hot field No input bla bla .... The property is set for the field not specific to its multi/sub value ... so i think its a good idea to handle the issue by a cross val or input routine, however i have used T array to enable and disable fields in local template so that records will be input by Specified Versions only ....  
Ahmed Ali Nisar          
Temenos T24 Consultant
Sapphire Consulting Service
+92 345 330 6585

Ahmet Baysa

unread,
Sep 27, 2011, 10:46:04 AM9/27/11
to jb...@googlegroups.com
Hi Srinivas,

.
.
.
TLOCREF<1,POS.DATE.OF.WL3,PRD.POS>= "NOINPUT"
.
.
.


jBASE debugger->S
Invalid or uninitialised variable -- NULL USED ,
Var TLOCREF , Line    58 , Source VVALIDATE.PB.APPTEST.FIELDS



i think niether T.LOCAL.REF not T.LOCREF does not work.

Srinivas

unread,
Sep 27, 2011, 3:15:42 PM9/27/11
to jb...@googlegroups.com
hi Ahmed,
 
This is the format of T.LOCREF, please check in I_RULES for further info.
 

T.LOCREF<FILE.LAYOUT,7> = ‘NOINPUT’or’NOCHANGE’


Regards,
 
Srinivas.

Ahmed Ali Nisar

unread,
Sep 29, 2011, 2:29:40 AM9/29/11
to jb...@googlegroups.com
Hi Srinivas, Ahmet,
     I have tried this 

 T.LOCREF<LOC.REF.POS,7> = 'NOINPUT'
where LOC.REF.POS = the field position in the local ref table.

This thing working fine but makes all the multi-values to null, i also have tried this
 
 T.LOCREF<LOC.REF.POS,7,AS> = 'NOINPUT'
where AS contains the number of specific sub-value-position

this has no effect even it won't give a compile error .......

Ahmet Baysa

unread,
Sep 29, 2011, 10:12:18 AM9/29/11
to jb...@googlegroups.com

Thank you Ahmed,
 I think I will handle it by cross checking functions.

thanks

VK

unread,
Sep 30, 2011, 2:43:48 AM9/30/11
to jBASE
Hi,
don't expect the compiler to know anything about T24 level.
"T.LOCREF<LOC.REF.POS,7,AS> = 'NOINPUT'" is absolutely valid from jBC
point of view and makes no sense at all for T24 data structures.
Moreover, fiddling with that stuff you most likely end up with a
logically broken record.

VK

On Sep 29, 8:29 am, Ahmed Ali Nisar <aan84...@gmail.com> wrote:
> Hi Srinivas, Ahmet,
>      I have tried this
>
>  T.LOCREF<LOC.REF.POS,7> = 'NOINPUT'
> where LOC.REF.POS = the field position in the local ref table.
>
> This thing working fine but makes all the multi-values to null, i also have
> tried this
>
>  T.LOCREF<LOC.REF.POS,7,AS> = 'NOINPUT'
> where AS contains the number of specific sub-value-position
>
> this has no effect even it won't give a compile error .......
>
> On Wed, Sep 28, 2011 at 12:15 AM, Srinivas <srinivasyada...@gmail.com>wrote:
>
>
>
>
>
>
>
>
>
> > hi Ahmed,
>
> > This is the format of T.LOCREF, please check in I_RULES for further info.
>
> > T.LOCREF<FILE.LAYOUT,7> = ‘NOINPUT’or’NOCHANGE’
>
> > Regards,
>
> > Srinivas.
> > On 27 September 2011 17:46, Ahmet Baysa <ahmet.ba...@gmail.com> wrote:
>
> >> Hi Srinivas,
>
> >> .
> >> .
> >> .
> >> TLOCREF<1,POS.DATE.OF.WL3,PRD.POS>= "NOINPUT"
> >> .
> >> .
> >> .
>
> >> jBASE debugger->S
> >> Invalid or uninitialised variable -- NULL USED ,
> >> Var TLOCREF , Line    58 , Source VVALIDATE.PB.APPTEST.FIELDS
>
> >> i think niether T.LOCAL.REF not T.LOCREF does not work.
>
> >>   On Tue, Sep 27, 2011 at 11:50 AM, Srinivas <srinivasyada...@gmail.com>wrote:
>
> >>>   Hi,
>
> >>> If its a local ref element , then make use of the common variable *
> >>> T.LOCREF* to set the field to NOINPUT
>
> >>> Regards,
>
> >>> Srinivas
>
> >>>   On 26 September 2011 13:41, Igor Micev <igormi...@gmail.com> wrote:
>
> >>>>  Hi,
> >>>> Even on Desktop it won't work always. It works only for some modules. I
> >>>> don't know why is that.
> >>>> However, there is a solution.
> >>>> You can play with R.NEW() and R.OLD() arrays values of the fields,
> >>>> regardless of the INPUT field's type.
> >>>> For example:
> >>>> IF COMI = '4' THEN
> >>>>   R.NEW(EB.CUS.LOCAL.REF)<1,POSITION.OF.DATE.FIELD,2>) =
> >>>> R.OLD(EB.CUS.LOCAL.REF)<1,POSITION.OF.DATE.FIELD,2>)<1,POSITION.OF.DATE.FIE LD,2>)
> *Ahmed Ali Nisar          *
Reply all
Reply to author
Forward
0 new messages