Creditinvoice report
Creditinvoice Report:
ContractClass:
[DataMemberAttribute]
class INC_Creditinvoicecontract
{
RefRecId recid;
}
[ DataMemberAttribute("recid")]
public RefRecId parmRecid(RefRecId _recid = recid)
{
recid = _recid;
return recid;
}
RDP Class:
[SRSReportParameterAttribute(classStr(INC_Creditinvoicecontract))]
class INC_CreditinvoiceDP extends SrsReportDataProviderPreProcessTempDB
{
INC_Creditinvoicecontract contract;
CustInvoiceJour custInvoiceJour;
CustInvoiceTrans custInvoiceTrans;
CustPackingSlipTrans custPackingSlipTrans;
INC_CreditinvoiceTmp inc_CreditinvoiceTmp;
INC_CreditinvoicelinesTmp inc_CreditinvoicelinesTmp;
RefRecId recid;
Str qtyKilo,salesPriceFils,lineAmountFils,totalAmountFils;
}
[SRSReportDataSetAttribute(tableStr(INC_CreditinvoicelinesTmp))]
public INC_CreditinvoicelinesTmp getinc_CreditinvoicelinesTmp()
{
select inc_CreditinvoicelinesTmp;
return inc_CreditinvoicelinesTmp;
}
[SRSReportDataSetAttribute(tableStr(INC_CreditinvoiceTmp))]
public INC_CreditinvoiceTmp getinc_CreditinvoiceTmp()
{
select inc_CreditinvoiceTmp;
return inc_CreditinvoiceTmp;
}
Public TempStr NumbertoKWDCurrency(real _num, CurrencyCode _currencyCode = "")
{
//int numOfPennies = (decround(frac(_num), 2) * 100) mod 100;
//real test = _num - frac(_num);
int numOfPennies;
real test;
int placeHolder;
int decimalPlaces;
int numOfTenths;
str 20 ones[19], tenths[9], hundreds, thousands, millions, billions, trillions;
int64 temp;
str 200 returntxt;
real modOperator(real a1, real a2)
{
int tmpi;
real tmp1, tmp2;
;
tmp1 = a1 / a2;
tmpi = real2int(tmp1);
tmp2 = tmpi;
return (tmp1 - tmp2)*a2;
}
real checkPower(real _test, int64 _power)
{
int64 numOfPower;
if (_test >= _power)
{
numOfPower = _test div _power;
if (numOfPower >= 100)
{
temp = numOfPower div 100;
returntxt = returntxt + ' ' + ones[temp] + ' ' + hundreds;
numOfPower = numOfPower mod 100;
}
if (numOfPower >= 20)
{
temp = numOfPower div 10;
returntxt = returntxt + ' ' + tenths[temp];
numOfPower = numOfPower mod 10;
}
if (numOfPower >= 1)
{
returntxt = returntxt + ' ' + ones[numOfPower];
numOfPower = numOfPower mod 10;
}
switch(_power)
{
case 1000000000000 :
{
returntxt = returntxt + ' ' + trillions;
_test = modOperator(_test, 1000000000000.00);
break;
}
case 1000000000 :
{
returntxt = returntxt + ' ' + billions;
_test = modOperator(_test, 1000000000);
break;
}
case 1000000 :
{
returntxt = returntxt + ' ' + millions;
_test = modOperator(_test, 1000000);
break;
}
case 1000 :
{
returntxt = returntxt + ' ' + thousands;
_test = modOperator(_test, 1000);
break;
}
case 100 :
{
returntxt = returntxt + ' ' + hundreds;
_test = modOperator(_test, 100);
break;
}
}
}
return _test;
}
#Define.text_1('One')
#Define.text_2('Two')
#Define.text_3('Three')
#Define.text_4('Four')
#Define.text_5('Five')
#Define.text_6('Six')
#Define.text_7('Seven')
#Define.text_8('Eight')
#Define.text_9('Nine')
#Define.text_10('Ten')
#Define.text_11('Eleven')
#Define.text_12('Twelve')
#Define.text_13('Thirteen')
#Define.text_14('Fourteen')
#Define.text_15('Fifteen')
#Define.text_16('Sixteen')
#Define.text_17('Seventeen')
#Define.text_18('Eighteen')
#Define.text_19('Nineteen')
#Define.text_20('Twenty')
#Define.text_30('Thirty')
#Define.text_40('Forty')
#Define.text_50('Fifty')
#Define.text_60('Sixty')
#Define.text_70('Seventy')
#Define.text_80('Eighty')
#Define.text_90('Ninety')
#Define.text_100('Hundred')
#Define.text_1000('Thousand')
#Define.text_1000000('Million')
#Define.text_1000000000('Billion')
#Define.text_1000000000000('Trillion')
#Define.text_and('and')
;
switch(Currency::find(_currencyCode).CurrencyDecimals)
{
case 3:
placeHolder = 1000;
decimalPlaces = 3;
break;
case 2:
placeHolder = 100;
decimalPlaces = 2;
break;
default:
placeHolder = 100;
decimalPlaces = 2;
break;
}
numOfPennies = (decround(frac(_num), decimalPlaces) * placeHolder) mod placeHolder;
test = _num - frac(_num);
ones[1] = #text_1;
ones[2] = #text_2;
ones[3] = #text_3;
ones[4] = #text_4;
ones[5] = #text_5;
ones[6] = #text_6;
ones[7] = #text_7;
ones[8] = #text_8;
ones[9] = #text_9;
ones[10] = #text_10;
ones[11] = #text_11;
ones[12] = #text_12;
ones[13] = #text_13;
ones[14] = #text_14;
ones[15] = #text_15;
ones[16] = #text_16;
ones[17] = #text_17;
ones[18] = #text_18;
ones[19] = #text_19;
tenths[1] = 'Not used';
tenths[2] = #text_20;
tenths[3] = #text_30;
tenths[4] = #text_40;
tenths[5] = #text_50;
tenths[6] = #text_60;
tenths[7] = #text_70;
tenths[8] = #text_80;
tenths[9] = #text_90;
hundreds = #text_100;
thousands = #text_1000;
millions = #text_1000000;
billions = #text_1000000000;
trillions = #text_1000000000000;
test = checkPower(test, 1000000000000);
test = checkPower(test, 1000000000);
test = checkPower(test, 1000000);
test = checkPower(test, 1000);
test = checkPower(test, 100);
if (test >= 20)
{
numOfTenths = test div 10;
returntxt = returntxt + ' ' + tenths[numofTenths];
numOfTenths = numOfTenths mod 10;
test = test mod 10;
}
if (test >= 1)
{
numOfTenths = real2int(test);
returntxt = returntxt + ' ' + ones[numOfTenths];
}
if (numOfPennies)
{
returntxt = returntxt + ' ' + #text_and + ' ' + Currency::find(_currencyCode).CurrencySubUnit + ' ' + incNumeralsToTxt_EN(numOfPennies);
}
return (returntxt);// + " " + "@SYS138135");
}
[SysEntryPointAttribute]
public void processReport()
{
contract = this.parmDataContract();
recid = contract.parmRecid();
select custInvoiceJour where custInvoiceJour.RecId == recid;
//Header
inc_CreditinvoiceTmp.InvoiceAccount = custInvoiceJour.InvoiceAccount;
inc_CreditinvoiceTmp.InvoiceId = custInvoiceJour.InvoiceId;
inc_CreditinvoiceTmp.InvoiceDate = custInvoiceJour.InvoiceDate;
inc_CreditinvoiceTmp.CustName = custInvoiceJour.InvoicingName;
select firstfast custInvoiceTrans where custInvoiceTrans.InvoiceId == custInvoiceJour.InvoiceId;
{
//info(strFmt("%1-%2",custInvoiceTrans.InventTransId,CustPackingSlipTrans::findInventTransId_RU(custInvoiceTrans.InventTransId).DeliveryDate));
inc_CreditinvoiceTmp.FromDate = CustPackingSlipTrans::findInventTransId_RU(custInvoiceTrans.InventTransId).DeliveryDate;
}
select firstfast custInvoiceTrans order by InventTransId desc where custInvoiceTrans.InvoiceId == custInvoiceJour.InvoiceId;
{
select firstfast custPackingSlipTrans order by RecId desc where custPackingSlipTrans.InventTransId == custInvoiceTrans.InventTransId;
//info(strFmt("%1-%2",custInvoiceTrans.InventTransId,custPackingSlipTrans.DeliveryDate));
inc_CreditinvoiceTmp.ToDate = custPackingSlipTrans.DeliveryDate;
}
inc_CreditinvoiceTmp.INC_Totalamount = custInvoiceJour.InvoiceAmount;
inc_CreditinvoiceTmp.INC_TotalamountKWD = real2int(custInvoiceJour.InvoiceAmount);
totalAmountFils = num2str(frac(abs(custInvoiceJour.InvoiceAmount)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
inc_CreditinvoiceTmp.INC_TotalFils = subStr(totalAmountFils,3,3);
inc_CreditinvoiceTmp.Numberinwords = this.NumbertoKWDCurrency(custInvoiceJour.InvoiceAmount,"kwd");
inc_CreditinvoiceTmp.insert();
//Lines
while select custInvoiceTrans
where custInvoiceTrans.SalesId == custInvoiceJour.SalesId
&& custInvoiceTrans.InvoiceId == custInvoiceJour.InvoiceId
&& custInvoiceTrans.InvoiceDate == custInvoiceJour.InvoiceDate
{
inc_CreditinvoicelinesTmp.ItemId = custInvoiceTrans.ItemId;
inc_CreditinvoicelinesTmp.ItemDescription = custInvoiceTrans.itemName();
inc_CreditinvoicelinesTmp.Qty = custInvoiceTrans.Qty;
inc_CreditinvoicelinesTmp.INC_QtyTon = real2int(custInvoiceTrans.Qty);
qtyKilo = num2str(frac(abs(custInvoiceTrans.Qty)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
inc_CreditinvoicelinesTmp.INC_QtyKilo = subStr(qtyKilo,3,3);
inc_CreditinvoicelinesTmp.SalesPrice = custInvoiceTrans.SalesPrice;
inc_CreditinvoicelinesTmp.INC_SalespriceKWD = real2int(custInvoiceTrans.SalesPrice);
salesPriceFils = num2str(frac(abs(custInvoiceTrans.SalesPrice)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
inc_CreditinvoicelinesTmp.INC_SalespriceFils = subStr(salesPriceFils,3,3);
inc_CreditinvoicelinesTmp.LineAmount = custInvoiceTrans.LineAmount;
inc_CreditinvoicelinesTmp.INC_LineamountKWD = real2int(custInvoiceTrans.LineAmount);
lineAmountFils = num2str(frac(abs(custInvoiceTrans.LineAmount)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
inc_CreditinvoicelinesTmp.INC_LineamountFils = subStr(lineAmountFils,3,3);
//inc_CreditinvoicelinesTmp.INC_Totalamount = custInvoiceJour.InvoiceAmount;
//inc_CreditinvoicelinesTmp.INC_TotalamountKWD = real2int(custInvoiceJour.InvoiceAmount);
//totalAmountFils = num2str(frac(abs(custInvoiceJour.InvoiceAmount)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
//inc_CreditinvoicelinesTmp.INC_TotalFils = subStr(totalAmountFils,3,3);
//inc_CreditinvoicelinesTmp.Numberinwords = this.NumbertoKWDCurrency(custInvoiceJour.InvoiceAmount,"kwd");
inc_CreditinvoicelinesTmp.insert();
}
}
Controller Class:
class INC_CreditinvoiceController extends SrsReportRunController
{
}
protected void prePromptModifyContract()
{
CustInvoiceJour custInvoiceJour;
INC_Creditinvoicecontract contract;
if (this.parmArgs() && this.parmArgs().record())
{
contract = this.parmReportContract().parmRdpContract() as INC_Creditinvoicecontract;
custInvoiceJour = this.parmArgs().record();
contract.parmRecid(custInvoiceJour.RecId);
}
}
public static void main(Args _args)
{
INC_CreditinvoiceController controller = new INC_CreditinvoiceController();
CustInvoiceJour custInvoiceJour;
custInvoiceJour = _args.record() as CustInvoiceJour;
controller.parmArgs(_args);
controller.parmReportName(ssrsReportStr(INC_Creditinvoicereport, INC_CreditinvoiceRP));
controller.parmShowDialog(false);
controller.startOperation();
}
ContractClass:
[DataMemberAttribute]
class INC_Creditinvoicecontract
{
RefRecId recid;
}
[ DataMemberAttribute("recid")]
public RefRecId parmRecid(RefRecId _recid = recid)
{
recid = _recid;
return recid;
}
RDP Class:
[SRSReportParameterAttribute(classStr(INC_Creditinvoicecontract))]
class INC_CreditinvoiceDP extends SrsReportDataProviderPreProcessTempDB
{
INC_Creditinvoicecontract contract;
CustInvoiceJour custInvoiceJour;
CustInvoiceTrans custInvoiceTrans;
CustPackingSlipTrans custPackingSlipTrans;
INC_CreditinvoiceTmp inc_CreditinvoiceTmp;
INC_CreditinvoicelinesTmp inc_CreditinvoicelinesTmp;
RefRecId recid;
Str qtyKilo,salesPriceFils,lineAmountFils,totalAmountFils;
}
[SRSReportDataSetAttribute(tableStr(INC_CreditinvoicelinesTmp))]
public INC_CreditinvoicelinesTmp getinc_CreditinvoicelinesTmp()
{
select inc_CreditinvoicelinesTmp;
return inc_CreditinvoicelinesTmp;
}
[SRSReportDataSetAttribute(tableStr(INC_CreditinvoiceTmp))]
public INC_CreditinvoiceTmp getinc_CreditinvoiceTmp()
{
select inc_CreditinvoiceTmp;
return inc_CreditinvoiceTmp;
}
Public TempStr NumbertoKWDCurrency(real _num, CurrencyCode _currencyCode = "")
{
//int numOfPennies = (decround(frac(_num), 2) * 100) mod 100;
//real test = _num - frac(_num);
int numOfPennies;
real test;
int placeHolder;
int decimalPlaces;
int numOfTenths;
str 20 ones[19], tenths[9], hundreds, thousands, millions, billions, trillions;
int64 temp;
str 200 returntxt;
real modOperator(real a1, real a2)
{
int tmpi;
real tmp1, tmp2;
;
tmp1 = a1 / a2;
tmpi = real2int(tmp1);
tmp2 = tmpi;
return (tmp1 - tmp2)*a2;
}
real checkPower(real _test, int64 _power)
{
int64 numOfPower;
if (_test >= _power)
{
numOfPower = _test div _power;
if (numOfPower >= 100)
{
temp = numOfPower div 100;
returntxt = returntxt + ' ' + ones[temp] + ' ' + hundreds;
numOfPower = numOfPower mod 100;
}
if (numOfPower >= 20)
{
temp = numOfPower div 10;
returntxt = returntxt + ' ' + tenths[temp];
numOfPower = numOfPower mod 10;
}
if (numOfPower >= 1)
{
returntxt = returntxt + ' ' + ones[numOfPower];
numOfPower = numOfPower mod 10;
}
switch(_power)
{
case 1000000000000 :
{
returntxt = returntxt + ' ' + trillions;
_test = modOperator(_test, 1000000000000.00);
break;
}
case 1000000000 :
{
returntxt = returntxt + ' ' + billions;
_test = modOperator(_test, 1000000000);
break;
}
case 1000000 :
{
returntxt = returntxt + ' ' + millions;
_test = modOperator(_test, 1000000);
break;
}
case 1000 :
{
returntxt = returntxt + ' ' + thousands;
_test = modOperator(_test, 1000);
break;
}
case 100 :
{
returntxt = returntxt + ' ' + hundreds;
_test = modOperator(_test, 100);
break;
}
}
}
return _test;
}
#Define.text_1('One')
#Define.text_2('Two')
#Define.text_3('Three')
#Define.text_4('Four')
#Define.text_5('Five')
#Define.text_6('Six')
#Define.text_7('Seven')
#Define.text_8('Eight')
#Define.text_9('Nine')
#Define.text_10('Ten')
#Define.text_11('Eleven')
#Define.text_12('Twelve')
#Define.text_13('Thirteen')
#Define.text_14('Fourteen')
#Define.text_15('Fifteen')
#Define.text_16('Sixteen')
#Define.text_17('Seventeen')
#Define.text_18('Eighteen')
#Define.text_19('Nineteen')
#Define.text_20('Twenty')
#Define.text_30('Thirty')
#Define.text_40('Forty')
#Define.text_50('Fifty')
#Define.text_60('Sixty')
#Define.text_70('Seventy')
#Define.text_80('Eighty')
#Define.text_90('Ninety')
#Define.text_100('Hundred')
#Define.text_1000('Thousand')
#Define.text_1000000('Million')
#Define.text_1000000000('Billion')
#Define.text_1000000000000('Trillion')
#Define.text_and('and')
;
switch(Currency::find(_currencyCode).CurrencyDecimals)
{
case 3:
placeHolder = 1000;
decimalPlaces = 3;
break;
case 2:
placeHolder = 100;
decimalPlaces = 2;
break;
default:
placeHolder = 100;
decimalPlaces = 2;
break;
}
numOfPennies = (decround(frac(_num), decimalPlaces) * placeHolder) mod placeHolder;
test = _num - frac(_num);
ones[1] = #text_1;
ones[2] = #text_2;
ones[3] = #text_3;
ones[4] = #text_4;
ones[5] = #text_5;
ones[6] = #text_6;
ones[7] = #text_7;
ones[8] = #text_8;
ones[9] = #text_9;
ones[10] = #text_10;
ones[11] = #text_11;
ones[12] = #text_12;
ones[13] = #text_13;
ones[14] = #text_14;
ones[15] = #text_15;
ones[16] = #text_16;
ones[17] = #text_17;
ones[18] = #text_18;
ones[19] = #text_19;
tenths[1] = 'Not used';
tenths[2] = #text_20;
tenths[3] = #text_30;
tenths[4] = #text_40;
tenths[5] = #text_50;
tenths[6] = #text_60;
tenths[7] = #text_70;
tenths[8] = #text_80;
tenths[9] = #text_90;
hundreds = #text_100;
thousands = #text_1000;
millions = #text_1000000;
billions = #text_1000000000;
trillions = #text_1000000000000;
test = checkPower(test, 1000000000000);
test = checkPower(test, 1000000000);
test = checkPower(test, 1000000);
test = checkPower(test, 1000);
test = checkPower(test, 100);
if (test >= 20)
{
numOfTenths = test div 10;
returntxt = returntxt + ' ' + tenths[numofTenths];
numOfTenths = numOfTenths mod 10;
test = test mod 10;
}
if (test >= 1)
{
numOfTenths = real2int(test);
returntxt = returntxt + ' ' + ones[numOfTenths];
}
if (numOfPennies)
{
returntxt = returntxt + ' ' + #text_and + ' ' + Currency::find(_currencyCode).CurrencySubUnit + ' ' + incNumeralsToTxt_EN(numOfPennies);
}
return (returntxt);// + " " + "@SYS138135");
}
[SysEntryPointAttribute]
public void processReport()
{
contract = this.parmDataContract();
recid = contract.parmRecid();
select custInvoiceJour where custInvoiceJour.RecId == recid;
//Header
inc_CreditinvoiceTmp.InvoiceAccount = custInvoiceJour.InvoiceAccount;
inc_CreditinvoiceTmp.InvoiceId = custInvoiceJour.InvoiceId;
inc_CreditinvoiceTmp.InvoiceDate = custInvoiceJour.InvoiceDate;
inc_CreditinvoiceTmp.CustName = custInvoiceJour.InvoicingName;
select firstfast custInvoiceTrans where custInvoiceTrans.InvoiceId == custInvoiceJour.InvoiceId;
{
//info(strFmt("%1-%2",custInvoiceTrans.InventTransId,CustPackingSlipTrans::findInventTransId_RU(custInvoiceTrans.InventTransId).DeliveryDate));
inc_CreditinvoiceTmp.FromDate = CustPackingSlipTrans::findInventTransId_RU(custInvoiceTrans.InventTransId).DeliveryDate;
}
select firstfast custInvoiceTrans order by InventTransId desc where custInvoiceTrans.InvoiceId == custInvoiceJour.InvoiceId;
{
select firstfast custPackingSlipTrans order by RecId desc where custPackingSlipTrans.InventTransId == custInvoiceTrans.InventTransId;
//info(strFmt("%1-%2",custInvoiceTrans.InventTransId,custPackingSlipTrans.DeliveryDate));
inc_CreditinvoiceTmp.ToDate = custPackingSlipTrans.DeliveryDate;
}
inc_CreditinvoiceTmp.INC_Totalamount = custInvoiceJour.InvoiceAmount;
inc_CreditinvoiceTmp.INC_TotalamountKWD = real2int(custInvoiceJour.InvoiceAmount);
totalAmountFils = num2str(frac(abs(custInvoiceJour.InvoiceAmount)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
inc_CreditinvoiceTmp.INC_TotalFils = subStr(totalAmountFils,3,3);
inc_CreditinvoiceTmp.Numberinwords = this.NumbertoKWDCurrency(custInvoiceJour.InvoiceAmount,"kwd");
inc_CreditinvoiceTmp.insert();
//Lines
while select custInvoiceTrans
where custInvoiceTrans.SalesId == custInvoiceJour.SalesId
&& custInvoiceTrans.InvoiceId == custInvoiceJour.InvoiceId
&& custInvoiceTrans.InvoiceDate == custInvoiceJour.InvoiceDate
{
inc_CreditinvoicelinesTmp.ItemId = custInvoiceTrans.ItemId;
inc_CreditinvoicelinesTmp.ItemDescription = custInvoiceTrans.itemName();
inc_CreditinvoicelinesTmp.Qty = custInvoiceTrans.Qty;
inc_CreditinvoicelinesTmp.INC_QtyTon = real2int(custInvoiceTrans.Qty);
qtyKilo = num2str(frac(abs(custInvoiceTrans.Qty)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
inc_CreditinvoicelinesTmp.INC_QtyKilo = subStr(qtyKilo,3,3);
inc_CreditinvoicelinesTmp.SalesPrice = custInvoiceTrans.SalesPrice;
inc_CreditinvoicelinesTmp.INC_SalespriceKWD = real2int(custInvoiceTrans.SalesPrice);
salesPriceFils = num2str(frac(abs(custInvoiceTrans.SalesPrice)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
inc_CreditinvoicelinesTmp.INC_SalespriceFils = subStr(salesPriceFils,3,3);
inc_CreditinvoicelinesTmp.LineAmount = custInvoiceTrans.LineAmount;
inc_CreditinvoicelinesTmp.INC_LineamountKWD = real2int(custInvoiceTrans.LineAmount);
lineAmountFils = num2str(frac(abs(custInvoiceTrans.LineAmount)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
inc_CreditinvoicelinesTmp.INC_LineamountFils = subStr(lineAmountFils,3,3);
//inc_CreditinvoicelinesTmp.INC_Totalamount = custInvoiceJour.InvoiceAmount;
//inc_CreditinvoicelinesTmp.INC_TotalamountKWD = real2int(custInvoiceJour.InvoiceAmount);
//totalAmountFils = num2str(frac(abs(custInvoiceJour.InvoiceAmount)),1,3,DecimalSeparator::Auto,ThousandSeparator::Apostrophe);
//inc_CreditinvoicelinesTmp.INC_TotalFils = subStr(totalAmountFils,3,3);
//inc_CreditinvoicelinesTmp.Numberinwords = this.NumbertoKWDCurrency(custInvoiceJour.InvoiceAmount,"kwd");
inc_CreditinvoicelinesTmp.insert();
}
}
Controller Class:
class INC_CreditinvoiceController extends SrsReportRunController
{
}
protected void prePromptModifyContract()
{
CustInvoiceJour custInvoiceJour;
INC_Creditinvoicecontract contract;
if (this.parmArgs() && this.parmArgs().record())
{
contract = this.parmReportContract().parmRdpContract() as INC_Creditinvoicecontract;
custInvoiceJour = this.parmArgs().record();
contract.parmRecid(custInvoiceJour.RecId);
}
}
public static void main(Args _args)
{
INC_CreditinvoiceController controller = new INC_CreditinvoiceController();
CustInvoiceJour custInvoiceJour;
custInvoiceJour = _args.record() as CustInvoiceJour;
controller.parmArgs(_args);
controller.parmReportName(ssrsReportStr(INC_Creditinvoicereport, INC_CreditinvoiceRP));
controller.parmShowDialog(false);
controller.startOperation();
}
Comments
Post a Comment