Re: ArrayField FieldWidget.State

Hello Joseph,
you get old. You don't see additional lines of code which makes
the whole ArrayField FS_UPDATE and FS_INACTIVE. After this lines the
original state of every widget is overridden :-) .
Sorry for this unnecessary questions and answers :-))))
Joseph Mirwald
At 12:31 31.07.98 +0200, you wrote:
Hello forte-users,
i have a problem using ArrayField and set the state of
direct mapped FieldWidget's.
Dependent on a flag in the array i would set the (e.g.) 6th field-state to
FS_INACTIVE or FS_UPDATE. To do this with an normal DataType like
DecimalNullable worked well. I use:
specialField : FieldWidget;
for row in 1 to ....
specialField=af.BodyGrid.GetChildInCell(row=row,column=6); // Get the widget
end for;
and dependent on the flag I set the state:
if flag[row] then
specialField.State=FS_UPDATE;
else
specialField.State=FS_INACTIVE;
end if;
But now i need a virtual attribute of type integer instead of the
DecimalNullable and i implement it well. But now the mechanism to set the
usage-state does not work anymore.
1.How do you implement ArrayField's with field-dependent state's ?
I use also the same mechanism to set the NextTabField and PrevTabField
property but if a widget is outside the visible grid there is no chance to do
this.
2. Have someone implement a special Prev-/NextTabField attribute
written which is able to set the Prev-/NextTabField also outside the visible
part of the ArrayField? (To slide within tool-code down and up does not
help. The last setting on a slided AF is the general setting for the others.
Maybe the MatrixField is the problem).

Xavier,
Create a method called GetWidgetState on your window which contains
the following:
GetWidgetState(w:fieldwidget):
if w.state = FS_USAGESTATE then
return w.GetStateForUsage(self.window.usage);
else
return w.state;
end if;
By default, a widget state equals FS_USAGESTATE(0) which is the
state set in the window workshop for the particular window usage.
Unless you specifically change the state, it will always be 0 and you
have to fetch the actual state using GetStateForUsage on the widget.
Hope this helps.
Peter
Hi every one
I'm looking for something to check the current state of the fieldWidget.
The State attribute (integer) determines how a widget reacts to user
actions and how it is displayed. It's a virtual attribute. No problem to
setting it with variable, but I don't find the way to test it like :
myFieldWidget.State <> FS_INACTIVE
(myFieldWidget.State & FS_INVISIBLE) <> 0
but this doesn't work
could you help me...?
Thank
Xavier Michel
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
Get Free Email and Do More On The Web. Visit http://www.msn.com
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

Similar Messages

  • ArrayField and state of child

    I got this problem:
    I want the array fieild to show the elementa of some columns depending on a
    boolean attribute of the mapped class:
    if true col 6 and 7 (datafield) will be invisible an col 5 visible and vice
    versa.
    Col 5 is a scrolllist so I need to populate each time the widget with
    different data.
    Everything functions well (htanks to the help found on the list) but I see
    a strange quirk:
    When I set to true two consecutive rows and then I scroll the arrayfield
    the widget of col 6 and 7 that were invisible
    pop up (only on one of the row), they are just a dirty paint as they cannot
    be selected (but show the hidden data)
    Any suggestion on this.
    I use R3.f
    Here is a code fragment of the method
    The array field has 5 rows
    Method popProv just populate the scrolllist with the array of listelement
    passed as parameter.
    mw1 : fieldWidget;
    mw2 : fieldWidget;
    mw3 : fieldWidget;
    myRow : integer = 1;
    for i in <arfProc>.TopRow to <arfProc>.TopRow + 4 do
    mw1 = <arfProc>.BodyGrid.GetChildInCell(myRow ,5);
    mw2 = <arfProc>.BodyGrid.GetChildInCell(myRow ,6);
    mw3 = <arfProc>.BodyGrid.GetChildInCell(myRow ,7);
    if arfProc.codFilter then
    mw1.State = FS_UPDATE;
    popProv(PI_sclProv = ScrollList(mw1),
    PI_arrPr = arfProc[i].arrProv);
    mw2.State = FS_INVISIBLE;
    mw3.State = FS_INVISIBLE;
    else
    mw1.State = FS_INVISIBLE;
    mw2.State = FS_UPDATE;
    mw3.State = FS_UPDATE;
    end if;
    myRow = myRow + 1;
    end for;
    Thanks
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    Apple does not sell Macs for any other purpose than for their own software, especially Mac OS X. It is not available without Leopard, soon to be Snow Leopard.
    Nothing has changed regarding installing or hosting other OSs.
    Apple posts no information for expanding the RAM capacity. You would need to check with the Hackintosh community for that information.
    Dah•veed
    Why do you reward points? 
The reward system helps to increase community participation. When a community member gives a reward to another member for providing helpful advice or a solution to his or her question, the recipient's points will help increase his or her status level within the community.

  • Return Mail--Invalid TAO ID(s)

    The TAO Internet E-mail Gateway could NOT deliver your message
    to the following invalid @mayspeh.com TAO mail ID's
    (all other @mayspeh.com TAO recipients addressed received
    your message):
    [email protected]
    ----------------------> Document Follows <---------------------
    Received: (from smap@localhost)
    by mail.mayspeh.com (8.9.1a/8.9.1) id RAA15293;
    Thu, 3 Sep 1998 17:23:26 -0500 (CDT)
    Received: from pebble.sageit.com(206.169.110.3) by hermod.mayspeh.com via smap (V2.1)
    id xma015274; Thu, 3 Sep 98 17:22:32 -0500
    Received: (from sync@localhost) by pebble.SageIT.com (8.6.10/8.6.9) id OAA01188 for forte-users-outgoing; Thu, 3 Sep 1998 14:09:37 -0700
    Received: (from uucp@localhost) by pebble.SageIT.com (8.6.10/8.6.9) id OAA01182 for <[email protected]>; Thu, 3 Sep 1998 14:09:34 -0700
    Received: from unknown(205.138.216.6) by pebble.sagesoln.com via smap (V2.0)
    id xma001180; Thu, 3 Sep 98 14:09:12 -0700
    Received: from Lotus Notes (PU Serial #1787)
    by smtp3.per-se.com (PostalUnion/SMTP(tm) v2.2 (Build 22005) for Windows NT(tm))
    id AA-1998Sep03.135823.1787.2005624; Thu, 03 Sep 1998 16:10:48 -0500
    From: [email protected]
    To: [email protected]
    Message-ID: <[email protected]>
    X-Conversion-ID: <PU-NOTES.2212.904849103.323>
    X-Mailer: Lotus Notes via PostalUnion/SMTP (v2.2 Build 22005)
    Mime-Version: 1.0
    Content-Type: text/plain; charset="US-ASCII"
    Date: Thu, 03 Sep 1998 16:10:48 -0500
    Subject: Non-Delivery of:forte-users-digest V1 #1041
    Sender: [email protected]
    Precedence: bulk
    Reply-To: [email protected]
    forte-users-digest Wednesday, 2 September 1998 Volume 01 : Number 1041
    In this issue:
    ArrayField and state of child
    Widget States
    From: Luca Gioppo <[email protected]>
    Date: Wed, 02 Sep 1998 15:00:23 +0200
    Subject: ArrayField and state of child
    I got this problem:
    I want the array fieild to show the elementa of some columns depending on a
    boolean attribute of the mapped class:
    if true col 6 and 7 (datafield) will be invisible an col 5 visible and vice
    versa.
    Col 5 is a scrolllist so I need to populate each time the widget with
    different data.
    Everything functions well (htanks to the help found on the list) but I see
    a strange quirk:
    When I set to true two consecutive rows and then I scroll the arrayfield
    the widget of col 6 and 7 that were invisible
    pop up (only on one of the row), they are just a dirty paint as they cannot
    be selected (but show the hidden data)
    Any suggestion on this.
    I use R3.f
    Here is a code fragment of the method
    The array field has 5 rows
    Method popProv just populate the scrolllist with the array of listelement
    passed as parameter.
    mw1 : fieldWidget;
    mw2 : fieldWidget;
    mw3 : fieldWidget;
    myRow : integer = 1;
    for i in <arfProc>.TopRow to <arfProc>.TopRow + 4 do
    mw1 = <arfProc>.BodyGrid.GetChildInCell(myRow ,5);
    mw2 = <arfProc>.BodyGrid.GetChildInCell(myRow ,6);
    mw3 = <arfProc>.BodyGrid.GetChildInCell(myRow ,7);
    if arfProc.codFilter then
    mw1.State = FS_UPDATE;
    popProv(PI_sclProv = ScrollList(mw1),
    PI_arrPr = arfProc[i].arrProv);
    mw2.State = FS_INVISIBLE;
    mw3.State = FS_INVISIBLE;
    else
    mw1.State = FS_INVISIBLE;
    mw2.State = FS_UPDATE;
    mw3.State = FS_UPDATE;
    end if;
    myRow = myRow + 1;
    end for;
    Thanks
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    From: Geoff Puterbaugh <[email protected]>
    Date: Wed, 02 Sep 1998 07:41:21 -0700
    Subject: Widget States
    Dave,
    FS_VIEW etc. aren't text values, they're integer constants which
    you can check out in DisplayProject. The one you want looks to
    be FS_VIEWONLY, which is equal to 2.
    All my best,
    Geoff
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    End of forte-users-digest V1 #1041
    ------ Message Header Follows ------
    Received: from pebble.SageIT.com by smtp3.per-se.com
    (PostalUnion/SMTP(tm) v2.2 (Build 22005) for Windows NT(tm))
    id AA-1998Sep02.105013.1787.119170; Wed, 02 Sep 1998 10:50:14 -0500
    Received: (from sync@localhost) by pebble.SageIT.com (8.6.10/8.6.9) id IAA16372
    for forte-users-digest-outgoing; Wed, 2 Sep 1998 08:00:11 -0700
    Date: Wed, 2 Sep 1998 08:00:11 -0700
    Message-Id: <[email protected]>
    From: [email protected]
    To: [email protected]
    Subject: forte-users-digest V1 #1041
    Reply-To: [email protected]
    Errors-To: [email protected]
    Precedence: bulk
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    Hello
    I'm a newbie labwindows,
     so i'm having the same error i have two pannel when i press paue still the same erro here is a preview of the code and a pic of the panel
    int CVICALLBACK PauseCB (int panel, int control, int event,
                             void *callbackData, int eventData1, int eventData2)
        switch (event)
            case EVENT_COMMIT:
             PauseFlag = TRUE;
             /*Timer Disabled When User Pauses*/
              SetCtrlAttribute (panelHandle,TABPANEL_TIMER,ATTR_ENABLED,0);
             SetPanelAttribute(TABPANEL_TIMER, ATTR_ENABLED,0);   
             TimerEnabled = FALSE;
             /*Timer Disabled When User Pauses*/
             /*Disable Use of Read/Write when timer is "paused"*/
             SetCtrlAttribute (panelHandle, TABPANEL_gpibwrt, ATTR_DIMMED,1);
             SetCtrlAttribute (panelHandle, TABPANEL_gpibwrt, ATTR_DIMMED,1);
             /*Disable Use of Read/Write when timer is "paused"*/
             SetCtrlAttribute (panelHandle, TABPANEL_CONTINUE, ATTR_DIMMED, 0);
             SetCtrlAttribute (panelHandle, TABPANEL_PAUSE, ATTR_DIMMED, 1);
                break;
            case EVENT_RIGHT_CLICK:
                break;
        return 0;
    Attachments:
    uir gpib .jpg ‏62 KB

  • RE: Selective State change of ArrayField

    >
    [Pascal Rottier]
    Thanks for sending me the technote, but look at the part I cut
    out of
    this technote and placed at the bottom of this message. It kind
    of
    proves my point. You can change a single cell's color, but not
    it's
    state. Hence, you can't make a cell invisible while leaving the
    other ones visible, which was the problem presented in the first
    message of this thread.
    it does work and there is a forte technote with sample codeavailable
    on the
    forte web site
    At 04:35 PM 5/19/98 +0200, you wrote:
    This won't work, because Forte ignores it if you try to set the
    state
    of
    a widget that is
    part of the bodygrid of an arrayfield. You can change color this
    way,
    but you can't change widget state.
    [Pascal Rottier]
    You can use this example to manipulate the visual behavior of
    a cell in an
    arrayfield, ie. its appearance (color, bold, highlighting,
    etc.), but
    not its functional behavior such as cell state. If you want
    to change
    the cell's functional behavior, you must set it for the entire
    column
    via the template field.
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    Okay, lets put an end to all this confusion. There are two ways to get
    to a single cell in an arrayfield.
    1) <ArrayField>.BodyGrid.GetChildInCell(row,column)
    2) for aWgt in <ArrayField>.BodyGrid.Children do
    if aWgt.Row = row
    and aWgt.Column = column then
    -- This is the one.
    end if;
    end for;
    The first one is only available in Forte 3 (and higher). The second
    one will work in all versions of Forte (I've never used Forte 1, so
    maybe it won't work there).
    Once you have the right widget, you can treat it like any other
    widget. Change it's color, inputmask, sizepolicy, size, state, what-
    ever.
    However, if the widget you found came from the bodygrid of an
    arrayfield and you change the state of the widget, nothing happens.
    The widget will always have the same state as it's template field.
    If you want to change the state of a widget, you have to change
    the state of it's templatefield, which will cause all widgets in that
    column to change to a new state.
    That is my experience with Forte 2. Maybe in Forte 3 it does
    work. The sample code supplied by Forte clearly states it is
    not possible to change the state, but this code also states it
    is intended for Forte 2. The sampe code supplied by some-
    one who had no problem changing the state of a cell in an
    arrayfield also included the method GetChildInCell, which would
    suggest he uses Forte 3.
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • RE: Selective State change of ArrayField Cell

    it does work and there is a forte technote with sample code available
    on the
    forte web site
    At 04:35 PM 5/19/98 +0200, you wrote:
    This won't work, because Forte ignores it if you try to set the stateof
    a widget that is
    part of the bodygrid of an arrayfield. You can change color this way,
    but you can't change widget state.
    [Pascal Rottier]
    Could someone send me this technote, because I can't get at
    those technotes and I'm really interested how this would be achieved.
    Thanx,
    Pascal.
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    it does work and there is a forte technote with sample code available
    on the
    forte web site
    At 04:35 PM 5/19/98 +0200, you wrote:
    This won't work, because Forte ignores it if you try to set the stateof
    a widget that is
    part of the bodygrid of an arrayfield. You can change color this way,
    but you can't change widget state.
    [Pascal Rottier]
    Could someone send me this technote, because I can't get at
    those technotes and I'm really interested how this would be achieved.
    Thanx,
    Pascal.
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • RE: Test the state of a fieldWidget

     

    Xavier,
    Create a method called GetWidgetState on your window which contains
    the following:
    GetWidgetState(w:fieldwidget):
    if w.state = FS_USAGESTATE then
    return w.GetStateForUsage(self.window.usage);
    else
    return w.state;
    end if;
    By default, a widget state equals FS_USAGESTATE(0) which is the
    state set in the window workshop for the particular window usage.
    Unless you specifically change the state, it will always be 0 and you
    have to fetch the actual state using GetStateForUsage on the widget.
    Hope this helps.
    Peter
    Hi every one
    I'm looking for something to check the current state of the fieldWidget.
    The State attribute (integer) determines how a widget reacts to user
    actions and how it is displayed. It's a virtual attribute. No problem to
    setting it with variable, but I don't find the way to test it like :
    myFieldWidget.State <> FS_INACTIVE
    (myFieldWidget.State & FS_INVISIBLE) <> 0
    but this doesn't work
    could you help me...?
    Thank
    Xavier Michel
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    Get Free Email and Do More On The Web. Visit http://www.msn.com
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • Selective State change of ArrayField Cell

    Hi guys,
    I have an ArrayField which has a cloumn as a ToggleField. My
    requirement is depending on some condition (Business Rule) make the
    ToggleField invisible for some rows while visible for others, so that
    they do not try to Toggle unwanted rows. The version we are using is
    20H2. Does any other version allow this. I know this doesn't. Also, is
    there any good workaround that anybody who faced with such a situation
    has tried. We have already implemented one workaround but was
    wondering if there is any other way?
    Any help would be Greatly appreaciated.
    Thank You All.
    Shrikant P. Iyengar
    Forte Systems Engineer
    International Business Corporation
    DO YOU YAHOO!?
    Get your free @yahoo.com address at http://mail.yahoo.com
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    Hi guys,
    I have an ArrayField which has a cloumn as a ToggleField. My
    requirement is depending on some condition (Business Rule) make the
    ToggleField invisible for some rows while visible for others, so that
    they do not try to Toggle unwanted rows. The version we are using is
    20H2. Does any other version allow this. I know this doesn't. Also, is
    there any good workaround that anybody who faced with such a situation
    has tried. We have already implemented one workaround but was
    wondering if there is any other way?
    Any help would be Greatly appreaciated.
    Thank You All.
    Shrikant P. Iyengar
    Forte Systems Engineer
    International Business Corporation
    DO YOU YAHOO!?
    Get your free @yahoo.com address at http://mail.yahoo.com
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • RE: DropLists in ArrayFields - is it possible to have adifferent sele

    Richard;
    Here you go....
    newList : Array of ListElement = new;
    { add elements }
    row : Integer = { get your row };
    column : Integer = { get by name or just know the number }
    // poof! Watch that down cast!
    (DropList)(<arrayField>.BodyGrid.GetChildInCell(row,column)).SetElementList(
    newList);
    You can also change FieldWidget settings....
    <arrayField>.BodyGrid.GetChildInCell(row,column).FillColor =
    C_BLUE;
    My array field doesn't scroll (lucky me!). See if the AfterFieldScrolled
    event fires at the right time to recalculate the widget state. I haven't
    played with it and I'm far from a Forte GUI guru, but I suspect that you are
    altering the column template and the visible widget is separate from the
    data. So as you scroll, the data would scroll but the new settings stay
    put. That's not what I would want/need. The widget reflects something
    about the data. When the data scrolls, so should the presentation
    properties!
    What may be needed is to somehow derive the presentation state settings
    dynamically from the mapped data. So when the data scrolled, the dynamic
    settings change on the new presentation row.
    Let me know.....
    Scott Irwin
    -----Original Message-----
    From: Richard Finegan [SMTP:[email protected]]
    Sent: Monday, August 24, 1998 1:38 PM
    To: 'Forte Users Mailing List'
    Subject: DropLists in ArrayFields - is it possible to have a
    different selection list per row?
    I have a DropList in an ArrayField column. Is it possible to have a
    different list of selections for each DropList in a different row?
    (ex.
    DropList #1 in row #1 can choose from a/b/c, whereas a DropList #2
    in row
    #2 can choose only from d/e/f, etc.) Technote 4996 seems to imply
    that it
    isn't possible, and everything I've tried so far has failed as well.
    Any insight appreciated.
    Richard Finegan
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive
    <URL:http://pinehurst.sageit.com/listarchive/>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    One way to do this is to get at the specific dropList widget in the
    arrayField by calling the getChildInCell(Row,Column) method on
    <..theArrayField..>.BodyGrid. This widget can then be assigned any
    dropList you want. Depending on the uniqueness of the individual
    dropLists, each data row specific dropList can be coded as an attribute
    (array of ListElement) on the mapped class, which can then be assigned
    to the dropList widget.
    A code snippet to do this would be -
    method refreshArray
    begin
    for displayRow in 1 to <myArrayField>.VisibleRows do
    dataRow : integer = displayRow + <myArrayField>.TopRow - 1;
    myDropListWidget : dropList =
    dropList(<myArrayField>.BodyGrid.getChildInCell(displayRow,
    <..columnNumOfDropList..>));
    myDropListWidget.setElementList(myArrayField[dataRow].myElementList);
    end for;
    end method;
    This method has be called only when the user scrolls the arrayField, as
    in -
    when <myArrayField>.AfterFieldScrolled do
    refreshArray();
    Hope this helps.
    Prashant.
    From: Richard Finegan[SMTP:[email protected]]
    Reply To: Richard Finegan
    Sent: Monday, August 24, 1998 11:38 AM
    To: 'Forte Users Mailing List'
    Subject: DropLists in ArrayFields - is it possible to have a
    different selection list per row?
    I have a DropList in an ArrayField column. Is it possible to have a
    different list of selections for each DropList in a different row?
    (ex.
    DropList #1 in row #1 can choose from a/b/c, whereas a DropList #2 in
    row
    #2 can choose only from d/e/f, etc.) Technote 4996 seems to imply
    that it
    isn't possible, and everything I've tried so far has failed as well.
    Any insight appreciated.
    Richard Finegan
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive
    <URL:http://pinehurst.sageit.com/listarchive/>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • Creating Forte FieldWidgets Dynamically at Runtime

    Hi Everyone,
    Could someone please help me with the following problem I have when
    creating Forte fieldwidgets dynamically at run-time. I am using Forte
    ver. 3.0.G.2.
    (-1-) I have a window class with an empty gridfield, <grfMain>, inside a
    viewport. The idea is to populate the gridfield with DataField
    fieldwidgets dynamically at runtime. Depending on some input criteria,
    sometimes some of the DataFields need to map to IntegerNullables, some
    to DoubleNullables and some to DateTimeNullables. (Please note that I
    cannot use the Forte window workshop to create these fieldwidgets,
    because different types of fieldwidgets will be needed at different
    times, in different numbers, at run-time. ) Here is a sample of how I am
    currently trying to achieve this:
    dfDate : DataField = new;
    dfDate.MaskType = MK_Template;
    dfDate.DateTemplate = new( value='dd/mm/yyyy' );
    dfDate.Row = 1;
    dfDate.Column = 2;
    dfDate.Parent = <grfMain>;
    dfInt : DataField = new;
    dfInt.MaskType = MK_INTEGER;
    dfInt.Row = 2;
    dfInt.Column = 2;
    dfInt.Parent = <grfMain>;
    dfReal : DataField = new;
    dfReal.MaskType = MK_FLOAT;
    dfReal.Row = 3;
    dfReal.Column = 2;
    dfReal.Parent = <grfMain>;
    The code above is called after the window has been opened with the
    Open() statement.
    Looking at the code above, one obvious omission is that the "Mapped
    Type" of the Datafields are not set up. In the Forte window workshop, an
    interface is provided to set up the "Mapped Type" of the Datafield
    widgets, but I'm not sure how to do that dynamically, and that is
    basically my biggest problem here.
    (-2-) If I now run the window class, the Datafield widgets get created,
    and they all have the correct input maks, but no validation gets done
    when one tabs away from the field. For example, Datafields with
    MaskType=MK_INTEGER will gladly accept '--1--0++7', while Datafields
    created in the window workshop (mapping to IntegerNullables) will do a
    validation, and not allow one to tab out of the field before the extra
    minus and plus signs are not removed.
    I have the same problem with the Datafields which have
    MaskType=MK_Template and DateTemplate='dd/mm/yyyy'. For the date, one
    can enter something like '2*\**\****', and leave the field, while the
    same type of datafield created in the window workshop (mapped to a
    DateTimeNullable), will not allow you to leave the field before a valid
    date has not been entered. To summarise, the input masks of my
    dynamically created Datafields work fine, but no validation gets done
    when the field looses the focus.
    (-3-) As a test, I used the Forte debugger ("view"-"local variables") to
    look at the differences between Datafields created dynamically, and
    those created in the Forte window workshop. One very obvious difference
    was that Datafield attribute "MapTypeName" was filled in for the window
    workshop Datafields, but not for my dynamically created Datafields. The
    problem is that Forte does not allow me to set this attribute
    dynamically in my code. How else can I setup the Mapped Type
    dynamically?
    (-4-) In order to have a consistent look-and-feel throughout our Forte
    project, we are making use of Domain classes for DATE and DECIMAL data
    entry fields. My questions are:
    (4.1) How must I go about creating Datafields dynamically that make use
    of these Domain classes?
    (4.2) Is it also a matter of setting up the "MapTypeName" attribute,
    which I cannot seem to do?
    (4.3) Is the mapping done differently for Domain classes?
    (-5-) Another interesting thing to note for Datafields created in the
    Forte Window Workshop, is that if the mapped type is IntegerNullable
    with Input Mask = Integer, or DoubleNullable with Input Mask = Float,
    then the Object that the Datafield widget maps to, must first be
    instantiated before the Loose-Focus validations will start to work. For
    example, if a Datafield widget called "dfTestInt" was created in the
    Forte window workshop, which maps to an IntegerNullable, and Input Mask
    = Integer, then the following line is needed before the window is
    displayed: dfTestInt = new;
    Without this line, one can enter something like '2---3+++7', and leave
    the field.
    This is not true for Datafields where the mapped type is
    DateTimeNullable with say Input Mask Template='dd\mm\yyyy'. In this case
    validations are done even thought the object being mapped to, has not
    been instantiated yet. In other words you will never be able to enter
    '2*/**/****', and leave the field for datafield created in the window
    workshop. Maybe in this case the validation is being done by the
    template itself?
    Thanks in advance
    Riaan
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    what I mean is rendering JSF components on the fly, becuase some time you don't know things at design time. Lets say I am designing a page in creator that shows the total number of dependants that belongs to a primary inusrance member in text boxes. Of course we don't know in advance how many dependants we have for a specific member unless we go to databse and fetch all the data at runtime. Desiging some thing dynamic like that is very easy in CGI or ASP/JSP but JSF model seems very static due to it's design time feature.
    So is it possible with JSF or not?

  • Re: (forte-users) Arrayfields & Tabbing

    I believe Ctrl-Tab will take you forward out of the arrayfield and to the next widget. We have some accessability code in our base window class to handle various special keyboard commands, but I think Ctrl-Tab is standard in Forte. (of course I've been wrong before :-) )
    Steven Barnes
    "Burns, Troy" <Troy.Burnsvacationclub.com> 11/13/00 09:57AM >>>I've looked in the archive, and found the examples of tabbing into an
    arrayfield. That is no problem. My question is, how do you tab out
    of an arrayfield? Shift-Tab will "back-tab" out of the arrayfield. How
    do you "forward-tab"?
    TIA,
    Troy Burns
    MVCI
    troy.burnsvacationclub.com
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

    Ctrl+Tab works between tabsheets.
    Jagadish
    "Steve Barnes" <DHS9126dhs.state.il.us> on 11/13/2000 11:22:22
    To: <forte-userslists.xpedior.com>, <Troy.Burnsvacationclub.com>
    cc:
    Fax to:
    Subject: Re: (forte-users) Arrayfields & Tabbing
    I believe Ctrl-Tab will take you forward out of the arrayfield and to the next
    widget. We have some accessability code in our base window class to handle
    various special keyboard commands, but I think Ctrl-Tab is standard in Forte.
    (of course I've been wrong before :-) )
    Steven Barnes
    "Burns, Troy" <Troy.Burnsvacationclub.com> 11/13/00 09:57AM >>>I've looked in the archive, and found the examples of tabbing into an
    arrayfield. That is no problem. My question is, how do you tab out
    of an arrayfield? Shift-Tab will "back-tab" out of the arrayfield. How
    do you "forward-tab"?
    TIA,
    Troy Burns
    MVCI
    troy.burnsvacationclub.com
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com
    For the archives, go to: http://lists.xpedior.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.xpedior.com

  • RE: A difficult problem using arrayfields.

    >
    The arrayfield widget has an attribute called bodygrid which is a
    compoundfield object containing the actual widgets, like the
    togglefield,
    in the visible rows of the array field.
    If you iterate through the children of the bodygrid and determine
    which child is in the right row and column for the cell you want,
    you can then change its state or other widget attributes.
    This technique is commonly used to highlight the selected row or cell
    in an array field.
    I'm aware of this technique. Our application uses highlightbars and this
    is exactly how we implemented them. However, when you code the following
    call:
    <arrayfield>.bodygrid.children[5].fillcolor = C_RED;
    you'll see the widget change color, but when you code
    <arrayfield>.bodygrid.children[5].state = FS_DISABLE;
    nothing happens. Somehow, forte won't allow you to change the state of a
    widget in this context. Is there a way around this?
    Pascal Rottier
    Origin Rotterdam
    Nederland

    >
    I ran in to the same problem a long time ago (Version 1-H)..
    My solution then was to trap for click events or other row-change events
    in the array field and set the state of the entire column (using the
    strange syntax they have for columns in array fields) to whatever state
    I wanted for the particular cell the user just went in to..
    To the user, it acted as if some cells were modifiable and some were
    not. Note that DISABLED doesn't allow click events at all, making it
    impossible to click on a different row which you could edit. I think I
    used "VIEW" state..
    Hope this helps.The user can click the togglefield without first entering the row. It's
    even possible that the arrayfield doesn't have the focus, when the user
    clicks the togglefield. In other words, with this technique you can
    disable the field AFTER it has been altered. Not before. The way I
    solved it now, is to trap the clickevent, check if it is legal for this
    row and if not, turn the field back to false. Now the user has a field
    that doesn't look disabled (since it isn't), but behaves like it. The
    only drawback is, that often you'll see the x apear for a microsecond
    before it disappears again.
    Pascal Rottier
    Origin Netherlands/Rotterdam

  • A difficult problem using arrayfields.

    I wanted to build some functionality into a window that I've been unable
    to do. The window has een arrayfield that shows an array of objects. The
    array has a few collums, one of which is a togglefield that shows the
    value of a booleandata attribute on the object. However, for some
    objects, depending on the value of another attribute, this booleandata
    attribute is not allowed to be set to true. We wanted to have these
    toggelfields disabled.
    So, we have an array, with, on each row a few textdatas, integerdatas
    and a togglefield, which is sometimes UPDATE and sometimes DISABLE.
    Well, I wasn't able to pull this off.
    It doesn't seem to be possible to set the widgetstate for widgets in an
    array seperately for each row.
    Does anyone have any suggestions.
    Thanks,
    Pascal Rottier
    Origin Netherlands
    Rotterdam

    >
    I ran in to the same problem a long time ago (Version 1-H)..
    My solution then was to trap for click events or other row-change events
    in the array field and set the state of the entire column (using the
    strange syntax they have for columns in array fields) to whatever state
    I wanted for the particular cell the user just went in to..
    To the user, it acted as if some cells were modifiable and some were
    not. Note that DISABLED doesn't allow click events at all, making it
    impossible to click on a different row which you could edit. I think I
    used "VIEW" state..
    Hope this helps.The user can click the togglefield without first entering the row. It's
    even possible that the arrayfield doesn't have the focus, when the user
    clicks the togglefield. In other words, with this technique you can
    disable the field AFTER it has been altered. Not before. The way I
    solved it now, is to trap the clickevent, check if it is legal for this
    row and if not, turn the field back to false. Now the user has a field
    that doesn't look disabled (since it isn't), but behaves like it. The
    only drawback is, that often you'll see the x apear for a microsecond
    before it disappears again.
    Pascal Rottier
    Origin Netherlands/Rotterdam

  • RE: Dynamic ArrayField

    Hello Corinne,
    Did you try the AddColumn method on ArrayField. I think this work even if
    your ArrayField is brand new.
    And I do not think you have to create all these widgets that are
    'attributes' of the ArrayField. If you want a ScrollBar, there is a boolean
    called HasScrollBar...
    I hope this will help,
    Franck SAGE
    Datasign AG fur Informatik
    -----Message d'origine-----
    De: Corinne Barbat-F085785 [SMTP:[email protected]]
    Date: mardi 27 octobre 1998 15:08
    A: [email protected]
    Objet: Dynamic ArrayField
    Hi,
    I wanna create dynamic widgets.
    I can create simple widget, but I have problems to create dynamic
    ArrayField. (I don't wanna clone existing arrayfield, I wanna create
    a brand new one)
    Does someone have already created a dynamic ArrayField ?
    Should I create a ScrollBar, a BodyGrid and a TitleGridField to create
    Dynamic ArrayField (because when I create a dynamic ArrayField, this
    ArrayField doesn't have any ScrollBar, BodyGrid or TitleGridField) ?
    Can I do a "GroupInto ArrayField" for a DataField in ToolCode ?
    thank you for your help.
    Corinne Barbat
    Michelin/France
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    Hi Corinne ,
    You can add/delete vertical scroll bar to the array
    field at runtime
    by resetting <ArrayField>.HasScrollBar attribute.
    Similarly you can turn on and turn off the column
    titles by resetting
    <ArrayField>.HasColumnTitles attribute. Remember
    Setting an array
    field's HasColumnTitles attribute to FALSE sets its
    TitleGrid attribute to NIL.
    When you create an array field, it already has
    TitleGrid and BodyGrid.
    You do not explicitly create them. You can dynamically
    add fieldwidgets
    to the array field in a similar way you add widgets to
    a Grid field.
    First set the row and col attributes of the field
    widget and
    then assign FieldWidget.Parent = <ArrayField>.BodyGrid.
    Take a look at "Anatomy of an Array Field" and
    "Adding Cells to a Grid Field" online help topics for
    more info.
    Ajith Kallambella M.
    Fort&eacute; Systems Engineer,
    International Business Corporation.
    -----Original Message-----
    From: Corinne Barbat-F085785
    [SMTP:[email protected]]
    Sent: Tuesday, October 27, 1998 9:08 AM
    To: [email protected]
    Subject: Dynamic ArrayField
    Hi,
    I wanna create dynamic widgets.
    I can create simple widget, but I have problems to
    create dynamic
    ArrayField. (I don't wanna clone existing
    arrayfield, I wanna create
    a brand new one)
    Does someone have already created a dynamic
    ArrayField ?
    Should I create a ScrollBar, a BodyGrid and a
    TitleGridField to create
    Dynamic ArrayField (because when I create a
    dynamic ArrayField, this
    ArrayField doesn't have any ScrollBar, BodyGrid or
    TitleGridField) ?
    Can I do a "GroupInto ArrayField" for a DataField
    in ToolCode ?
    thank you for your help.
    Corinne Barbat
    Michelin/France
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive
    <URL:http://pinehurst.sageit.com/listarchive/>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • And/or if statement in rtf templates.

    Hi all,
    I'm using XML Publisher 4.5.
    I have created a word template file (rtf) for my reports. I need to be able to show some content in the template file by using and and/or if statement.
    fx. <?if:doc_type='STANDARD'?> OR <?if:doc_type='DEFAULT'?>
    How can I do this?
    In advance thank you.
    Best regards
    Kenneth

    Hi D,
    Thank you for your answer.
    I have seriously thought about that solution; but I don't think it's a smart way to do it.
    If i do it like that, i need to copy the whole table and paste it inside the if statements.
    I have two xml elements that I need to make the decisions on. POH_PO_TYPE & CP_RELEASE_NUM.
    POH_PO_TYPE can be: STANDARD, RELEASE or BLANKET.
    CP_RELEASE_NUM can be: '' or N
    If POH_PO_TYPE is RELEASE AND CP_RELEASE_NUM is not ''
    OR POH_PO_TYPE is STANDARD
    OR POH_PO_TYPE is BLANKET AND CP_RELEASE_NUM is ''
    THEN show table (which contains the whole PO).
    It shall show the content of the PO in any of these cases.
    BR Kenneth

  • Filename in import statement

    Hi srinivas bobbala,
    Thank you for your response.But I think my quesition was not clear.My ques... is for suppose there is one datafile for importing like.. "datafile_21" Here my intention is it takes file from datafile_21 only but it appears in import statement like datafile_21<<curmon>>.
    import database sample.sample data from data_file "c:\\ABC\datafile_21_AUG.txt" using server rules_file datafile on error abort;
    In this it takes datafile from datafile_21.But it appears like datafile_21_AUG in import statement.This AUG coming from batch file.
    Essmsh c:\\ABC\loadmxl.mxl %curmon%

    No it is not possible.
    I assume the data file "datafile_21" is first renamed to datafile_21_${CurrMth} in the batchscript.
    After that this data file *datafile_21_${CurrMth}* is pointed in the import statement.
    In the logs you will see this file as datafile_21_Aug.

Maybe you are looking for

  • Can not open Build page in the visualstudio online

    On attempt to open BUILD page error appears: TF50309: The following account does not have sufficient permissions to complete the operation: Kateryna Chistyakova. The following permissions are needed to perform this operation: View project-level infor

  • Initial time machine backup larger than the original

    I have been using time machine with a 1 TB time capsule without issue on a older Macbook in the house. I just got a Macbook pro and am attempting to backup on the same time capsule. During setup, Time machine states there is 118GB to back up when loo

  • How to calculate length of the string in transformation file

    Hello all I have tried a number of ways and I am not able to calculate the length of the incoming field in transformation file for my data load. Here is the issue. I have an incoming string of length 10 and I need to use it to update multiple dimensi

  • How do I get a tranparent background?

    I have some black text on white background. Just like what you are seeing right here in this post. I'd like to drag the text over some photos. How do I get rid of the white background so I do this? Thanks!

  • Validity Table Question - 0CALDAY and 0PLANT

    Hi, I have an Inventory InfoCube 0IC_C03 and I noticed that the validity table has both 0CALDAY and 0PLANT checked.  I read the documentation that it's best to have just 0CALDAY. http://help.sap.com/scenarios_bus2004/helpdata/en/42/266241fe918347e100