Sybase NNTP forums - End Of Life (EOL)

The NNTP forums from Sybase - forums.sybase.com - are now closed.

All new questions should be directed to the appropriate forum at the SAP Community Network (SCN).

Individual products have links to the respective forums on SCN, or you can go to SCN and search for your product in the search box (upper right corner) to find your specific developer center.

Different behavior between Win32 application and Appeon.

9 posts in Appeon (partner product) Last posting was on 2011-04-11 15:58:27.0Z
William Trindade Posted on 2011-02-16 20:43:00.0Z
Sender: 7d95.4d5c2dc1.1804289383@sybase.com
From: William Trindade
Newsgroups: sybase.public.appeon
Subject: Different behavior between Win32 application and Appeon.
X-Mailer: WebNews to Mail Gateway v1.1t
Message-ID: <4d5c36d4.7f02.1681692777@sybase.com>
NNTP-Posting-Host: 10.22.241.41
X-Original-NNTP-Posting-Host: 10.22.241.41
Date: 16 Feb 2011 12:43:00 -0800
X-Trace: forums-1-dub 1297888980 10.22.241.41 (16 Feb 2011 12:43:00 -0800)
X-Original-Trace: 16 Feb 2011 12:43:00 -0800, 10.22.241.41
Lines: 72
Path: forums-1-dub!not-for-mail
Xref: forums-1-dub sybase.public.appeon:2642
Article PK: 21798

Hi,

We have some validations that work as follow:

[CODE]
event itemchanged;call super::itemchanged;
integer li_max_day
string ls_code
any la_current, la_original
if ( dwo.name = 'sunday' or dwo.name = 'saturday' ) and (
not isnull( data ) ) and ( trim( data ) <> ''
) then

ls_code = this.object.type[ row ]

SELECT ind_max_day
INTO :li_max_day
FROM types
WHERE ( type = :ls_code );

if li_max_day = 1 then

gnv_app.of_message( 'ft_temps_reg_not_autorized' ) //

messagebox( 'itemchanged - before current=original', string(
dwo.name ) + ' = ' + string( dwo.primary.original[ row ] ))

dwo.primary.current[ row ] = dwo.primary.original[ row ]

messagebox( 'itemchanged - after current=original', string(
dwo.name ) + ' = ' + string( dwo.primary.original[ row ] ))

ib_nomessage = true

return 1
end if
end event

[/CODE]

When we tested in a Win32 application (desktop), the
Original value is not changed after:
dwo.primary.current [row] = dwo.primary.original [row]

But when tested in Appeon the original value assumes the
current value.

Example:
If dwo.primary.original [row] contains null and
dwo.primary.current [row] contains 2, in a Win32
application, after the operation current = original, current
and original will contain null (Original is not affected)

But in the Appeon current becomes null and original will
contain the value 2 (a swap is executed)

One way to fix this would be the use of SetItem:
la_original dwo.primary.original = [row]
li_rc integer
li_rc this.SetItem = (row, string (dwo.name) la_original)//
replaces dwo.primary.current[ row ] = dwo.primary.original[
row ]

But that would imply a big refactor in most of our forms.

I searched but I not found reference in the Workaround
guide.

I would like a confirmation of the technical team if this is
considered a bug.

Thanks


Marco Meoni Posted on 2011-02-19 10:59:27.0Z
From: Marco Meoni <mail@marcomeoni.com>
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.11) Gecko/20101013 Thunderbird/3.1.5
MIME-Version: 1.0
Newsgroups: sybase.public.appeon
Subject: Re: Different behavior between Win32 application and Appeon.
References: <4d5c36d4.7f02.1681692777@sybase.com>
In-Reply-To: <4d5c36d4.7f02.1681692777@sybase.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
NNTP-Posting-Host: vip152.sybase.com
X-Original-NNTP-Posting-Host: vip152.sybase.com
Message-ID: <4d5fa28f@forums-1-dub>
Date: 19 Feb 2011 02:59:27 -0800
X-Trace: forums-1-dub 1298113167 10.22.241.152 (19 Feb 2011 02:59:27 -0800)
X-Original-Trace: 19 Feb 2011 02:59:27 -0800, vip152.sybase.com
Lines: 81
Path: forums-1-dub!not-for-mail
Xref: forums-1-dub sybase.public.appeon:2645
Article PK: 13534

Hi,
I experienced the same issue a while ago.
Afaik, the usage of dw dot notation is not fully supported.
Please consider to use RowsCopy and Set/GetItem to move data around.
Cheers,
M.

On 2/16/11 9:43 PM, William Trindade wrote:
> Hi,
>
> We have some validations that work as follow:
>
> [CODE]
> event itemchanged;call super::itemchanged;
> integer li_max_day
> string ls_code
> any la_current, la_original
> if ( dwo.name = 'sunday' or dwo.name = 'saturday' ) and (
> not isnull( data ) ) and ( trim( data )<> ''
> ) then
>
> ls_code = this.object.type[ row ]
>
> SELECT ind_max_day
> INTO :li_max_day
> FROM types
> WHERE ( type = :ls_code );
>
> if li_max_day = 1 then
>
> gnv_app.of_message( 'ft_temps_reg_not_autorized' ) //
>
> messagebox( 'itemchanged - before current=original', string(
> dwo.name ) + ' = ' + string( dwo.primary.original[ row ] ))
>
> dwo.primary.current[ row ] = dwo.primary.original[ row ]
>
> messagebox( 'itemchanged - after current=original', string(
> dwo.name ) + ' = ' + string( dwo.primary.original[ row ] ))
>
> ib_nomessage = true
>
> return 1
> end if
> end event
>
> [/CODE]
>
> When we tested in a Win32 application (desktop), the
> Original value is not changed after:
> dwo.primary.current [row] = dwo.primary.original [row]
>
> But when tested in Appeon the original value assumes the
> current value.
>
> Example:
> If dwo.primary.original [row] contains null and
> dwo.primary.current [row] contains 2, in a Win32
> application, after the operation current = original, current
> and original will contain null (Original is not affected)
>
> But in the Appeon current becomes null and original will
> contain the value 2 (a swap is executed)
>
> One way to fix this would be the use of SetItem:
> la_original dwo.primary.original = [row]
> li_rc integer
> li_rc this.SetItem = (row, string (dwo.name) la_original)//
> replaces dwo.primary.current[ row ] = dwo.primary.original[
> row ]
>
> But that would imply a big refactor in most of our forms.
>
> I searched but I not found reference in the Workaround
> guide.
>
> I would like a confirmation of the technical team if this is
> considered a bug.
>
> Thanks


William Trindade Posted on 2011-02-21 17:11:38.0Z
Sender: 2049.4d626d9c.1804289383@sybase.com
From: William Trindade
Newsgroups: sybase.public.appeon
Subject: Re: Different behavior between Win32 application and Appeon.
X-Mailer: WebNews to Mail Gateway v1.1t
Message-ID: <4d629cc9.2637.1681692777@sybase.com>
References: <4d5fa28f@forums-1-dub>
NNTP-Posting-Host: 10.22.241.41
X-Original-NNTP-Posting-Host: 10.22.241.41
Date: 21 Feb 2011 09:11:38 -0800
X-Trace: forums-1-dub 1298308298 10.22.241.41 (21 Feb 2011 09:11:38 -0800)
X-Original-Trace: 21 Feb 2011 09:11:38 -0800, 10.22.241.41
Lines: 92
Path: forums-1-dub!not-for-mail
Xref: forums-1-dub sybase.public.appeon:2648
Article PK: 21800

Thanks Marco,

But this behavior is not included in
Appeon_Troubleshooting_Guide.chm and
Appeon_Workarounds_Guide.chm

This "behavior" should be regarded as a BUG in Appeon?

Thanks

William

> Hi,
> I experienced the same issue a while ago.
> Afaik, the usage of dw dot notation is not fully
> supported. Please consider to use RowsCopy and Set/GetItem
> to move data around. Cheers,
> M.
>
> On 2/16/11 9:43 PM, William Trindade wrote:
> > Hi,
> >
> > We have some validations that work as follow:
> >
> > [CODE]
> > event itemchanged;call super::itemchanged;
> > integer li_max_day
> > string ls_code
> > any la_current, la_original
> > if ( dwo.name = 'sunday' or dwo.name = 'saturday' ) and
> > ( not isnull( data ) ) and ( trim( data )<> ''
> > ) then
> >
> > ls_code = this.object.type[ row ]
> >
> > SELECT ind_max_day
> > INTO :li_max_day
> > FROM types
> > WHERE ( type = :ls_code );
> >
> > if li_max_day = 1 then
> >
> > gnv_app.of_message( 'ft_temps_reg_not_autorized'
> > ) //
> > messagebox( 'itemchanged - before current=original',
> > string( dwo.name ) + ' = ' + string(
> dwo.primary.original[ row ] )) >
> > dwo.primary.current[ row ] =
> > dwo.primary.original[ row ]
> > messagebox( 'itemchanged - after current=original',
> > string( dwo.name ) + ' = ' + string(
> > dwo.primary.original[ row ] ))
> > ib_nomessage = true
> >
> > return 1
> > end if
> > end event
> >
> > [/CODE]
> >
> > When we tested in a Win32 application (desktop), the
> > Original value is not changed after:
> > dwo.primary.current [row] = dwo.primary.original [row]
> >
> > But when tested in Appeon the original value assumes the
> > current value.
> >
> > Example:
> > If dwo.primary.original [row] contains null and
> > dwo.primary.current [row] contains 2, in a Win32
> > application, after the operation current = original,
> > current and original will contain null (Original is not
> affected) >
> > But in the Appeon current becomes null and original will
> > contain the value 2 (a swap is executed)
> >
> > One way to fix this would be the use of SetItem:
> > la_original dwo.primary.original = [row]
> > li_rc integer
> > li_rc this.SetItem = (row, string (dwo.name)
> > la_original)// replaces dwo.primary.current[ row ] =
> > dwo.primary.original[ row ]
> >
> > But that would imply a big refactor in most of our
> forms. >
> > I searched but I not found reference in the Workaround
> > guide.
> >
> > I would like a confirmation of the technical team if
> > this is considered a bug.
> >
> > Thanks
>


William Trindade Posted on 2011-04-11 15:11:56.0Z
Sender: e17.4da319f8.1804289383@sybase.com
From: William Trindade
Newsgroups: sybase.public.appeon
Subject: Re: Different behavior between Win32 application and Appeon.
X-Mailer: WebNews to Mail Gateway v1.1t
Message-ID: <4da31a3c.e29.1681692777@sybase.com>
References: <4d5c36d4.7f02.1681692777@sybase.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="-=_forums-1-dub4da31a3c"
NNTP-Posting-Host: 10.22.241.41
X-Original-NNTP-Posting-Host: 10.22.241.41
Date: 11 Apr 2011 08:11:56 -0700
X-Trace: forums-1-dub 1302534716 10.22.241.41 (11 Apr 2011 08:11:56 -0700)
X-Original-Trace: 11 Apr 2011 08:11:56 -0700, 10.22.241.41
Lines: 1327
Path: forums-1-dub!not-for-mail
Xref: forums-1-dub sybase.public.appeon:2672
Article PK: 13547

Hi Steven,

I attached a test case for this problem.

If you run this example in PB 12 environment (Win32
application), you see this:
http://img685.imageshack.us/i/testwin32step1.jpg/

If you click in Show "Col_Id" Values (Original / Current)
button:
http://img52.imageshack.us/i/testwin32step2.jpg/

Click in Show "Col_Value" Values (Original / Current)
button:
http://img857.imageshack.us/i/testwin32step3.jpg/

Click in Exec. Test ID button:
http://img641.imageshack.us/i/testwin32step4.jpg/

Click in Exec. Test Value button:
http://img688.imageshack.us/i/testwin32step5.jpg/

***Here, the two platforms differ.

In Appeon if you click in Test ID button, you get:
http://img852.imageshack.us/i/testappeonstep4.jpg/

Compare with:
http://img641.imageshack.us/i/testwin32step4.jpg/

Note that the original has "1" using Appeon, but kept Null
using PowerBuilder Win32.

But if you click in Exec. Test Value button with Appeon:
http://img641.imageshack.us/i/testwin32step4.jpg/

You get the same result on both platforms.

This indicates that the problem occurs only when the
original value of the cell is null.

Now, we are using Appeon 6.5 EBF 202 and PB 12.1 Build 6518.

Thanks for your Help.

William


William Trindade Posted on 2011-04-11 15:16:12.0Z
Sender: e17.4da319f8.1804289383@sybase.com
From: William Trindade
Newsgroups: sybase.public.appeon
Subject: Re: Different behavior between Win32 application and Appeon.
X-Mailer: WebNews to Mail Gateway v1.1t
Message-ID: <4da31b3c.e73.1681692777@sybase.com>
References: <4da31a3c.e29.1681692777@sybase.com>
NNTP-Posting-Host: 10.22.241.41
X-Original-NNTP-Posting-Host: 10.22.241.41
Date: 11 Apr 2011 08:16:12 -0700
X-Trace: forums-1-dub 1302534972 10.22.241.41 (11 Apr 2011 08:16:12 -0700)
X-Original-Trace: 11 Apr 2011 08:16:12 -0700, 10.22.241.41
Lines: 3
Path: forums-1-dub!not-for-mail
Xref: forums-1-dub sybase.public.appeon:2674
Article PK: 13549

Sorry for the double post.

William