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
-
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.comCtrl+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 -
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é 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
KennethHi 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 -
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