Well for example I created an extension and declared the same table so if my code don't run it will give no output data.
For this actually I need only to insert 4 more fields but without the whole standard code It didn't returned all the data it was at beginning.
If I run it like this the new i empty ntrastat table will run.
[ExtensionOf(classStr(IntrastatTransfer))]
final class IntrastatTransferSZM_Extension
{
protected Intrastat initIntrastatFromProjInvoiceItem(
ProjInvoiceJour _projInvoiceJour,
ProjInvoiceItem _projInvoiceItem)
{
next initIntrastatFromProjInvoiceItem(_projInvoiceJour, _projInvoiceItem);
Intrastat intrastat;
LogisticsPostalAddress sendRecvAddr;
ServiceParametersSz serviceparm = ServiceParametersSz::find();
if(curExt() == 'SZM' && serviceparm.AutoFillServiceData == true)
{
intrastat.initValue();
intrastat.TransDate = _projInvoiceJour.InvoiceDate;
intrastat.AccountNum = this.calcProjInvoiceJourAccountNum(_projInvoiceJour);
intrastat.DlvTerm = _projInvoiceJour.DlvTerm;
intrastat.DebCredType = ModuleInventCustVend::Cust;
intrastat.CountryRegionId = deliveryPostalAddress.CountryRegionId;
intrastat.State = deliveryPostalAddress.State;
intrastat.County = deliveryPostalAddress.County;
/* Unique reference */
intrastat.TransTableId = _projInvoiceItem.TableId;
intrastat.TransRecId = _projInvoiceItem.RecId;
intrastat.UpdateNum = _projInvoiceItem.ProjInvoiceId;
intrastat.Qty = _projInvoiceItem.IntrastatTransferMap::qty(abs(_projInvoiceItem.Qty), _projInvoiceItem.Salesunit);
this.calcAmountsAndMarkups(_projInvoiceJour, _projInvoiceItem, intrastat);
intrastat.VatNum = CustTable::find(intrastat.AccountNum).getPrimaryRegistrationNumber(TaxRegistrationTypesList::TAXID, _projInvoiceJour.InvoiceDate);
this.initDirectionAndOrderType(ModuleCustVend::Cust, intrastat.Qty, intrastat, _projInvoiceItem.TransactionCode, _projInvoiceItem.salesLine().SalesType == SalesType::ReturnItem);
intrastat.Category = SalesLine::findInventTransId(_projInvoiceItem.InventTransId).SalesCategory;
this.initIntrastatFromTransferMap(intrastat, _projInvoiceItem);
sendRecvAddr = this.getSendRecvAddress(ModuleCustVend::Cust,
intrastat.OrderType,
_projInvoiceJour.InvoiceAccount,
_projInvoiceJour.DeliveryPostalAddress,
TransportationDocument::find(_projInvoiceJour.TransportationDocument).LoadedPostalAddress);
intrastat.SendReceiveCountryRegionId = sendRecvAddr.CountryRegionId;
intrastat.SendReceiveState = sendRecvAddr.State;
intrastat.TransactionCode = _projInvoiceitem.TransactionCode;
intrastat.IntrastatCommodity = InventTable::find('REKLAMACJA_FM').intrastatCommodity;
intrastat.TransportMode = '3';
intrastat.dlvTerm = _projInvoiceJour.DlvTerm;
this.setDirectionCode(intrastat);
}
return intrastat;
}
}