Möchte/muß man beim bzw. vor dem Schliessen eines Formulares etwas tun, z.B. Prüfungen durchführen, so stellt Dynamics AX dafür einige Methoden zur Verfügung, die in einer bestimmten Reihenfolge abgearbeitet werden. Da ich selbst mir diese Reihenfolge nicht merke, habe ich sie hier kurz notiert.
Beim Schliessen eines Formulares über einen OK-Commandbutton:
closeOK
canClose
close
Beim Schliessen eines Formulares über einen CANCEL-Commandbutton:
closeCancel
canClose
close
Beim Schliessen eines Formulares über "das rote X" bzw. der ESC-Taste:
canClose
close
Bei einer Lookup-Form verhält es sich etwas anders:
Beim Schliessen eines Formulares über einen OK-Commandbutton:
closeSelect
closeOK
canClose
close
Beim Schliessen eines Formulares über einen CANCEL-Commandbutton:
closeSelect
closeOK
canClose
close
Beim Schliessen eines Formulares über "das rote X" bzw. der ESC-Taste:
canClose
close
Daraus ergibt sich, daß die optimale Methode für Prüfungen die canClose-Methode ist.
Hier nun noch ein kurzer Job, der ein Formular öffnet und nach dessen Schliessen ermittelt, wie das Formular geschlossen wurde:
static void OpenForm(Args _args)
{
FormRun form = null;
Args formParams = new Args();
;
formParams.name(formStr(CustTable));
form = classFactory.formRunClass(formParams);
form.init();
form.run();
form.wait();
if(form.closed())
{
setPrefix("Form was closed.");
if(form.closedOk())
{
info("Form was closed by OK-Button.");
}
else if(form.closedCancel())
{
info("Form was closed by CANCEL-Button.");
}
else
{
info("Form was closed by CLOSE-Button.");
}
}
}
Dieser Beitrag bezieht sich auf die Versionen: Dynamics AX 2009, Dynamics AX 2012
Diese Webseite verwendet Cookies, um Benutzern einen besseren Service anzubieten. Wenn Sie weiterhin auf der Seite bleiben, stimmen Sie der Verwendung von Cookies zu.
Mehr dazu
Möchte/muß man beim bzw. vor dem Schliessen eines Formulares etwas tun, z.B. Prüfungen durchführen, so stellt Dynamics AX dafür einige Methoden zur Verfügung, die in einer bestimmten Reihenfolge abgearbeitet werden. Da ich selbst mir diese Reihenfolge nicht merke, habe ich sie hier kurz notiert.
Beim Schliessen eines Formulares über einen OK-Commandbutton:
Beim Schliessen eines Formulares über einen CANCEL-Commandbutton:
Beim Schliessen eines Formulares über "das rote X" bzw. der ESC-Taste:
Bei einer Lookup-Form verhält es sich etwas anders:
Beim Schliessen eines Formulares über einen OK-Commandbutton:
Beim Schliessen eines Formulares über einen CANCEL-Commandbutton:
Beim Schliessen eines Formulares über "das rote X" bzw. der ESC-Taste:
Daraus ergibt sich, daß die optimale Methode für Prüfungen die canClose-Methode ist.
Hier nun noch ein kurzer Job, der ein Formular öffnet und nach dessen Schliessen ermittelt, wie das Formular geschlossen wurde:
{
FormRun form = null;
Args formParams = new Args();
;
formParams.name(formStr(CustTable));
form = classFactory.formRunClass(formParams);
form.init();
form.run();
form.wait();
if(form.closed())
{
setPrefix("Form was closed.");
if(form.closedOk())
{
info("Form was closed by OK-Button.");
}
else if(form.closedCancel())
{
info("Form was closed by CANCEL-Button.");
}
else
{
info("Form was closed by CLOSE-Button.");
}
}
}