[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

microsoft.public.axapta.programming

Logging form and report execution

Xavi

10/19/2005 10:49:00 AM

Hi all.

I'm new to Axapta so please feel free to direct me to any other source
of information avalaible.

I have not been able to find a FAQ for this newsgroups, if there is
one please correct me.

We have problems with the speed ot the sales forms, we think some
other processes may cause these to run slowly, so we want to be able
to have a log stating which reports and forms have been running when a
slowdown appears. I think this shouldn't be very difficult, maybe
adding a few lines to an object from which all forms and reports may
inherit? But I have not found this object...

Can you point me the right way?

Any other ideas about possible causes to this bad performance, or
other ideas about how to log program execution will be welcome.

Thanks in advance!
Xavi

7 Answers

Brun

10/19/2005 11:37:00 AM

0

hello,

axpapta has a codeprofiler which shows the time every method is using. you
find it on the menu on the top tools -> devlopment tools -> code-profiler.
click start before you run the action which should be messured, after the
action click stop and follow the forms.
i hope this information was helpful to you.

kindly regards

stephan brun

Xavi

10/19/2005 1:13:00 PM

0

On Wed, 19 Oct 2005 04:37:03 -0700, "Brun"
<Brun@discussions.microsoft.com> wrote:

>hello,
>
>axpapta has a codeprofiler which shows the time every method is using. you
>find it on the menu on the top tools -> devlopment tools -> code-profiler.
>click start before you run the action which should be messured, after the
>action click stop and follow the forms.
>i hope this information was helpful to you.

Thanks! If I understood well (my menus are in Spanish so I had to
translate, I suppose you mean the option "Trazas de c&#243;digo", as it is
the closest translation to what you said), this tool is for timing one
program. This is very helpful, I did not know itexisted, and I''ll use
it for this problem too.

But what I meant is a sort of log (if it doesn''t exist, how can I
create something like this), showing something like this:

User Program StartTime EndTime
john.doe SalesForm 12:01.03 12:03.01
....

The one you proposed, if we activate it, would record a lot of lines
for each form or report, then it would be very difficult to see if
execution of reportWhatEver is always running when a slowdown in
SalesForm occurs.

Thanks anyway for your advice, it will be helpful too.
Xavi



Allan Wallis

10/20/2005 8:25:00 AM

0

I haven''t tried this but it may help:-

Look at the class Syssetupformrun
Add an overide RUN method and an overide CLOSE method.
After Super() in RUN add your own code to log the opening of the form.
And in the CLOSE method add your code for closing the form.

CURUSERID() is the username and this.name() is the formname;

"Xavi" wrote:

> Hi all.
>
> I''m new to Axapta so please feel free to direct me to any other source
> of information avalaible.
>
> I have not been able to find a FAQ for this newsgroups, if there is
> one please correct me.
>
> We have problems with the speed ot the sales forms, we think some
> other processes may cause these to run slowly, so we want to be able
> to have a log stating which reports and forms have been running when a
> slowdown appears. I think this shouldn''t be very difficult, maybe
> adding a few lines to an object from which all forms and reports may
> inherit? But I have not found this object...
>
> Can you point me the right way?
>
> Any other ideas about possible causes to this bad performance, or
> other ideas about how to log program execution will be welcome.
>
> Thanks in advance!
> Xavi
>
>

Allan Wallis

10/20/2005 12:38:00 PM

0

I have just tested my previous suggestion and it works fine for forms
I haven''t tested it for reports but I think you want to put your start and
stop code before and after the super call in a run() method;

"Xavi" wrote:

> Hi all.
>
> I''m new to Axapta so please feel free to direct me to any other source
> of information avalaible.
>
> I have not been able to find a FAQ for this newsgroups, if there is
> one please correct me.
>
> We have problems with the speed ot the sales forms, we think some
> other processes may cause these to run slowly, so we want to be able
> to have a log stating which reports and forms have been running when a
> slowdown appears. I think this shouldn''t be very difficult, maybe
> adding a few lines to an object from which all forms and reports may
> inherit? But I have not found this object...
>
> Can you point me the right way?
>
> Any other ideas about possible causes to this bad performance, or
> other ideas about how to log program execution will be welcome.
>
> Thanks in advance!
> Xavi
>
>

Xavi

10/21/2005 12:50:00 PM

0



"Allan Wallis" <AllanWallis@discussions.microsoft.com> escribi&#243; en el
mensaje news:E5C19C6F-791D-48AC-BCA9-4B5C3C8762E2@microsoft.com...
> I haven''t tried this but it may help:-
>
> Look at the class Syssetupformrun
> Add an overide RUN method and an overide CLOSE method.
> After Super() in RUN add your own code to log the opening of the form.
> And in the CLOSE method add your code for closing the form.
>
> CURUSERID() is the username and this.name() is the formname;

Thanks I lot, I''ll give it a try, that''s exactly what I was looking for!

Xavi



Xavi

10/21/2005 12:51:00 PM

0



"Allan Wallis" <AllanWallis@discussions.microsoft.com> escribi&#243; en el
mensaje news:659EF6CC-DFBA-4A23-A7C8-E67D88A49F66@microsoft.com...
> I have just tested my previous suggestion and it works fine for forms
> I haven''t tested it for reports but I think you want to put your start and
> stop code before and after the super call in a run() method;

OK, thanks again!




Xavi

10/21/2005 2:18:00 PM

0


"Allan Wallis" <AllanWallis@discussions.microsoft.com> escribi&#243; en el
mensaje news:E5C19C6F-791D-48AC-BCA9-4B5C3C8762E2@microsoft.com...
> I haven''t tried this but it may help:-
>
> Look at the class Syssetupformrun
> Add an overide RUN method and an overide CLOSE method.
> After Super() in RUN add your own code to log the opening of the form.
> And in the CLOSE method add your code for closing the form.

It works!! But it has a little caveat: every form called by the main form
will be logged. Is it easy to find a way to log only the forms run from a
menu item? Or, better than that, the forms that can be called from menu
items, even if they are actually called from another object? Then the log
would show only one open/close pair of lines for each program used.

If this is not possible, we''ll manage with what you suggested, it is enough,
after we filter it.

Thanks
Xavi