{
Dialog dialog;
DialogField dialogCustId;
DialogField dialogSalesId;
DialogRunbase dialogRunBase;
CustAccount custId;
Str1260 salesId;
ASAP_VATHeader headerTable;
ASAP_VATLine lineTable;
NumberSeq numberSeq;
ASAPG_VATDocuNumber newDocuNumber;
}
-----------
public void CustIdLookup(FormStringControl control)
{
boolean ret;
SysTableLookup sysTableLookup = SysTableLookup::newParameters(tablenum(CustTable), control);
Query query = new Query();
QueryBuildDataSource queryBuildDataSource;
QueryBuildRange queryBuildRange;
;
queryBuildDataSource = query.addDataSource(tablenum(CustTable));
sysTableLookup.addLookupfield(fieldnum(CustTable, AccountNum));
sysTableLookup.addLookupfield(fieldnum(CustTable, party ));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
-------
public Object Dialog()
{
FormRun formRun;
FormStringControl ctrlSalesId, ctrlCustId;
;
super();
dialog =super();
dialog.caption("VAT Documentation Creation ");
dialogCustId = dialog.addField(extendedTypeStr(CustAccount));
//dialogSalesId = dialog.addField(extendedTypeStr(SalesId));
dialogSalesId = dialog.addField (extendedTypeStr(Str1260),"Sales ID");
ctrlCustId = dialogCustId.control();
ctrlCustId.registerOverrideMethod(methodStr(FormStringControl,lookup), methodStr(ASAP_VATDocumentationDialogFields, custIdLookup),this);
ctrlSalesId = dialogSalesId.control();
ctrlSalesId.registerOverrideMethod(methodStr(FormStringControl,lookup), methodStr(ASAP_VATDocumentationDialogFields, salesIdLookup),this);
return dialog;
}
--------------
public void run()
{
Query query = new query();
QueryRun queryRun;
QueryBuildDataSource salesTableBuildDataSource;
QueryBuildRange salesLineRange;
boolean recordFound = false;
SalesLine salesLine;
CustTable custTable;
CustAccount previousCustAccount;
QueryBuildDataSource invemtDimBuildDataSource;
SalesTable salesTable, _salesTable;
;
custId = dialogCustId.value();
salesId = dialogSalesId.value();
salesId = strReplace(salesId,";",",");
if(!salesId || !custId)
throw error("Sales id and Customer id must be filled");
custTable = CustTable::find(custId);
salesTableBuildDataSource = query.addDataSource(tablenum(SalesTable));
salesTableBuildDataSource.addRange(fieldNum(SalesTable,SalesId)).value(salesId);
numberSeq = NumberSeq::newGetNum(SalesParameters::numRefVATDocumentation());
newDocuNumber = numberSeq.num();
numberSeq.used();
queryRun = new QueryRun(query);
while(queryRun.next())
{
salesTable = queryRun.get(tableNum(SalesTable));
// added for non repeating the salesid in dropdown --start
ttsBegin;
select forUpdate _salesTable
where _salesTable.SalesId == salesTable.SalesId;
{
_salesTable.ASAPG_VAT_IsGenerated = NoYes::Yes;
_salesTable.update();
}
ttsCommit;
// -- end
if(previousCustAccount != custId)
{
headerTable.AllSalesId = salesId;
headerTable.DocumentNum = newDocuNumber;
headerTable.GeneratedDate = today();
// info(strFmt("header % 1",headerTable.AllSalesId ));
headerTable.CustAccount = salesTable.CustAccount;
custTable = CustTable::find(salesTable.CustAccount);
headerTable.CustName = custTable.name();
headerTable.insert();
lineTable.DocumentNum = newDocuNumber;
lineTable.IsGenerated = NoYes::Yes;
lineTable.insert();
previousCustAccount = headerTable.CustAccount ;
}
}
if(headerTable)
{
info(strFmt("New PackingSlip %1", newDocuNumber));
info(strFmt("SalesIds are %1: ",salesId));
}
}
---------------
public void salesIdLookup(FormStringControl SalesOrderLookup)
{
Query query = new Query(Querystr(ASAP_VATDocumentation));
QueryBuildDataSource qbdsSO;
container cnt;
SysLookupMultiSelectGrid SysLookupMultiSelectGrid;
;
if(dialogCustId.value())
{
query.dataSourceTable(tableNum(SalesTable)).addRange(fieldNum(SalesTable, CustAccount)).value(dialogCustId.value());
query.dataSourceTable(tableNum(SalesTable)).addRange(RangeStatus::Locked);
if (SalesOrderLookup != null)
{
SysLookupMultiSelectGrid::lookup(query, SalesOrderLookup, SalesOrderLookup, cnt);
}
}
}
------------
public static void main(Args args)
{
ASAP_VATDocumentationDialogFields vatDocumentationDialogFields = new ASAP_VATDocumentationDialogFields();
;
vatDocumentationDialogFields.prompt();
vatDocumentationDialogFields.run();
}
No comments:
Post a Comment