class FixedAsset_Allocate extends RunBaseBatch
{
JournalId NewJournalId ;
str JournalDescription ;
DialogField dlgDescription;
DialogField DlgJournal ;
#DEFINE.CurrentVersion(1)
#LOCALMACRO.CurrentList
JournalDescription,
NewJournalId
#ENDMACRO
public container pack()
{
return [#currentVersion,#currentList];
}
public boolean unpack(container packedClass)
{
Version version = RunBase::getVersion(packedClass);
switch (version)
{
case #CurrentVersion:
[version, #CurrentList] = packedClass;
break;
default:
return false;
}
return true;
}
public Object dialog()
{
DialogRunbase dialog;
//Setup the dialog
dialog = super();
dialog.caption(" General Journal Description ");
dlgDescription = dialog.addField(extendedtypestr(LedgerJournalTransTxt), "Description" );
return dialog;
}
public boolean getFromDialog()
{
boolean ret;
JournalDescription = dlgDescription.value();
ret = super();
return ret;
}
public void run()
{
//some logic
}
public boolean validate(Object calledFrom = null)
{
boolean ret;
ret = super(calledFrom);
return ret;
}
public static FixedAsset_Allocate construct()
{
return new FixedAsset_Allocate();
}
public static ClassDescription description()
{
return "Allocate to project ";
}
public static void main(Args args)
{
FixedAsset_Allocate AllocateProject = new FixedAsset_Allocate();
//AllocateProject.parmInBatch(false);
if (! args || ! args.record())
{
throw error(strFmt("@SYS29104", classStr(FixedAsset_Allocate)));
}
FormRun callerForm = args.caller();
if (callerForm)
{
LedgerJournalTrans LedgerJournalTrans = args.record();
JournalId JournalId = LedgerJournalTrans.JournalNum ;
AllocateProject.parmLedgerJournal(JournalId);
if (AllocateProject.prompt())
{
AllocateProject.runOperation();
}
}
}
protected boolean canRunInNewSession()
{
return true;
}
public boolean allowSaveLast()
{
return true;
}
public boolean canGoBatch()
{
return true;
}
public JournalId parmLedgerJournal(JournalId _JournalId = NewJournalId )
{
NewJournalId = _JournalId ;
return NewJournalId;
}
What I want to do is when click on button (allocate) open dialog has description field and create new general journal .
it works well when I try first time . after that args saw the previous values not the new values
when I removed prompt from main method it worked but when I called it and make dialog it didn't update data in args and see previous values
how can I fix it ?