protected void prePromptModifyContract()
{
super();
if (this.parmArgs() && this.parmArgs().record())
{
contract = this.parmReportContract().parmRdpContract() as ContractClass_MY; <<-Return null
datatable = this.parmArgs().record();
contract.parmPurchId(datatable.PurchId); <<–purchase ID that im Try To get
}
}
–>ContractClass_MY Object Not Initialize Error Why ?
Can you show us how you’ve associated ContractClass_MY with your data provider?
My Issue is When i generate report from Visual Studio 2010 its works fine. But when i added that report to Menu Item and Open/Run from Front End it gives me error. When i debug that code and found that its gives me error from Contract Class object not Initialized. Please help me for this case. Thanks in Advanced.
If you don’t want to tell us more your code, at least split the statement to two parts and check whet you get before applying “as ContractClass_MY”.
→ Inside ContractClass_MY class
[DataContractAttribute]
public class ContractClass_MY extends TradeDocumentReportContract
{
PurchId PurchId;
}
[DataMemberAttribute(“PurchId”)]
public PurchId parmPurchId(PurchId _Purchid = PurchId)
{
;
PurchId =_Purchid;
return PurchId;
}
→ Inside Controller Classs
[SRSReportParameterAttribute(classStr(ContractClass_MY))]
class PurchaseInvoice_Controller extends SrsReportRunController
{
ContractClass_MY contract;
vendpurchorderjour datatable;
}
protected void prePromptModifyContract()
{
super();
if (this.parmArgs() && this.parmArgs().record())
{
contract = this.parmReportContract().parmRdpContract() as ContractClass_MY; <<-Return null
datatable = this.parmArgs().record();
contract.parmPurchId(datatable.PurchId); <<–purchase ID that im Try To get
}
}
public static void main(Args _args)
{
PurchaseInvoice_Controller controller = new PurchaseInvoice_Controller();
VendPurchOrderJour dataTable;
dataTable = _args.record() as VendPurchOrderJour;
controller.parmArgs(_args);
controller.parmReportName(ssrsReportStr(RportPurchaseInvoice , Purchase_Invoice)); <-Report Name & Design name
controller.parmShowDialog(false);
controller.parmLoadFromSysLastValue(false);
controller.startOperation();
}
→ Inside ProviderClass
[
SRSReportParameterAttribute(classStr(Dev_PurchaseInvoice_Contract))
]
class Dev_PurchaseInvoice_Provider extends SRSReportDataProviderBase
{
PurchaseInvoice_Contract contract;
PurchaseInvoice_TempDB PurchaseInvoice_TempDB;
VendPurchOrderJour objVendPurchOrderJour;
PurchTable objPurchTable;
VendTable objVendTable;
VendInvoiceJour objVendInvoiceJour;
PurchId _PurchId;
DirPartyTable objdirpartytable,objdirpartytable_vendor;
TaxInformation_IN objTaxInformation_IN;
LogisticsPostalAddress objLogisticsPostalAddress;
PurchLine objPurchLine;
PurchInv_Param objPurchInv_Param;
}
[SRSReportDataSetAttribute(“PurchaseInvoice_TempDB”)]
public PurchaseInvoice_TempDB GetPurchaseInvoice_TempDB()
{
select * from PurchaseInvoice_TempDB;
return PurchaseInvoice_TempDB;
}
You’re trying to convert the contract to ContractClass_MY, but your contract is Dev_PurchaseInvoice_Contract, which isn’t compatible and therefore the case can’t work.
Throw away SRSReportParameterAttribute on your controller class; it has no effect there.
For reference, the user’s decided to continue the discussion in in a different forum.