/// <summary> /// Create RM transaction /// <param name="transaction">Header of RM transaction</param> /// <param name="Distribution">Distribution Account of RM Transaction</param> /// <param name="Taxes">Taxes of RM transaction</param> /// <param name="company">COMPANY SHORT NAME</param> /// <returns>Response Class</returns> /// </summary> // Log4NetMR.classClsRegistrarLog logW = new Log4NetMR.classClsRegistrarLog(); public Response TransactionCreate(RMTransactionHeader transaction, RMTransactionDist[] Distribution, RMDocumentTaxes[] Taxes, string company) { Response response; string server = ConfigKey.ReadSetting("SERVER"); string transactionXML = string.Empty; string CNX = "data source=" + server + ";initial catalog=" + company + ";integrated security=SSPI;persist security info=False;packet size=4096"; var eConnect = new eConnectRequest(); RMTransactionType rmTranType = new RMTransactionType(); var getnext = new GetNextDocNumbers(); getnext.RequireServiceProxy = false; try { string DOCNUMBR = string.Empty; if (string.IsNullOrEmpty(transaction.DOCNUMBR)) { DOCNUMBR = getnext.GetNextRMNumber(IncrementDecrement.Increment, RMPaymentType.RMCreditMemo, CNX); } else { DOCNUMBR = transaction.DOCNUMBR; } rmTranType.taRMTransaction = SetTransactionValues(transaction, DOCNUMBR); if (transaction.CREATEDIST == 0) { rmTranType.taRMDistribution_Items = SetDistributionValues(Distribution, DOCNUMBR); } if (transaction.CreateTaxes == 1) { rmTranType.taRMTransactionTaxInsert_Items = SetTaxValues(Taxes, DOCNUMBR); } transactionXML = SerializeRMTransaction(rmTranType); response = eConnect.CreateGPTransaction(CNX, transactionXML); return(response); } catch (Exception ex) { //logW.LogExeption("Econnect", 2, ex); response = new Response(); response.SUCCESS = false; response.MESSAGE = ex.Message; response.STACK = ex.StackTrace; return(response); } finally { getnext.Dispose(); } }
public Response CreateRMInvoice(RMTransactionHeader Header, RMTransactionDist[] Distrib, RMDocumentTaxes[] Taxes, string company) { var gpservices = new RMTransactionClient(); Response response; response = gpservices.CreateRMTransaction(Header, Distrib, Taxes, company); gpservices.Close(); return(response); }
/// <summary> /// Set Header Values /// <param name="transaction"></param> /// <param name="DOCNUMBR"></param> /// </summary> private taRMTransaction SetTransactionValues(RMTransactionHeader transaction, string DOCNUMBR) { try { var rmTransaction = new taRMTransaction { RMDTYPAL = transaction.RMDTYPAL, DOCNUMBR = transaction.DOCNUMBR, //DOCDATE = transaction.DOCDATE.ToString("dd/MM/yyyy"), DOCDATE = transaction.DOCDATE.ToString("yyyy-MM-dd"), BACHNUMB = transaction.BACHNUMB, CUSTNMBR = transaction.CUSTNMBR, DOCAMNT = transaction.DOCAMNT, SLSAMNT = transaction.SLSAMNT, DOCDESCR = transaction.DOCDESCR, ADRSCODE = transaction.ADRSCODE, SLPRSNID = transaction.SLPRSNID, SALSTERR = transaction.SALSTERR, SHIPMTHD = transaction.SHIPMTHD, TAXSCHID = transaction.TAXSCHID, CSTPONBR = transaction.CSTPONBR, COSTAMNT = transaction.COSTAMNT.GetValueOrDefault(), TRDISAMT = transaction.TRDISAMT.GetValueOrDefault(), TRDDISCT = transaction.TRDDISCT.GetValueOrDefault(), FRTAMNT = transaction.FRTAMNT.GetValueOrDefault(), MISCAMNT = transaction.MISCAMNT.GetValueOrDefault(), TAXAMNT = transaction.TAXAMNT.GetValueOrDefault(), BKTSLSAM = transaction.BKTSLSAM.GetValueOrDefault(), BKTFRTAM = transaction.BKTFRTAM.GetValueOrDefault(), BKTMSCAM = transaction.BKTMSCAM.GetValueOrDefault(), CASHAMNT = transaction.CASHAMNT.GetValueOrDefault(), CBKIDCSH = transaction.CBKIDCSH, //CASHDATE = transaction.CASHDATE.ToShortDateString(), DCNUMCSH = transaction.DCNUMCSH, CHEKAMNT = transaction.CHEKAMNT.GetValueOrDefault(), CBKIDCHK = transaction.CBKIDCHK, CBKIDCRD = transaction.CBKIDCRD, CHEKNMBR = transaction.CHEKNMBR, //CHEKDATE = transaction.CHEKDATE.ToShortDateString(), DCNUMCHK = transaction.DCNUMCHK, CRCRDAMT = transaction.CRCRDAMT.GetValueOrDefault(), CRCRDNAM = transaction.CRCRDNAM, RCTNCCRD = transaction.RCTNCCRD, //CRCARDDT = transaction.CRCARDDT.ToShortDateString(), DCNUMCRD = transaction.DCNUMCRD, DISCRTND = transaction.DISCRTND.GetValueOrDefault(), DISTKNAM = transaction.DISTKNAM.GetValueOrDefault(), WROFAMNT = transaction.WROFAMNT.GetValueOrDefault(), PPSAMDED = transaction.PPSAMDED.GetValueOrDefault(), GSTDSAMT = transaction.GSTDSAMT.GetValueOrDefault(), PYMTRMID = transaction.PYMTRMID, DISAVAMT = transaction.DISAVAMT.GetValueOrDefault(), DSCDLRAM = transaction.DSCDLRAM.GetValueOrDefault(), DSCPCTAM = transaction.DSCPCTAM.GetValueOrDefault(), LSTUSRED = transaction.LSTUSRED, PTDUSRID = transaction.PTDUSRID, DistRef = transaction.DistRef, BatchCHEKBKID = transaction.BatchCHEKBKID, //DUEDATE = transaction.DUEDATE.ToShortDateString(), //DISCDATE = transaction.DISCDATE.ToShortDateString(), CURNCYID = transaction.CURNCYID, XCHGRATE = transaction.XCHGRATE.GetValueOrDefault(), RATETPID = transaction.RATETPID, //EXPNDATE = transaction.EXPNDATE.ToShortDateString(), //EXCHDATE = transaction.EXCHDATE.ToShortDateString(), EXGTBDSC = transaction.EXGTBDSC, EXTBLSRC = transaction.EXTBLSRC, RATEEXPR = transaction.RATEEXPR.GetValueOrDefault(), DYSTINCR = transaction.DYSTINCR.GetValueOrDefault(), RATEVARC = transaction.RATEVARC.GetValueOrDefault(), TRXDTDEF = transaction.TRXDTDEF.GetValueOrDefault(), RTCLCMTD = transaction.RTCLCMTD.GetValueOrDefault(), PRVDSLMT = transaction.PRVDSLMT.GetValueOrDefault(), DATELMTS = transaction.DATELMTS.GetValueOrDefault(), //TIME1 = transaction.TIME1.ToShortDateString(), COMDLRAM = transaction.COMDLRAM.GetValueOrDefault(), COMAPPTO = transaction.COMAPPTO.GetValueOrDefault(), RequesterTrx = transaction.RequesterTrx.GetValueOrDefault(), CREATEDIST = transaction.CREATEDIST.GetValueOrDefault(), }; //if (transaction.DOCDATE != null) //{ // rmTransaction.DOCDATE = transaction.DOCDATE.ToShortDateString(); //} if (transaction.CASHDATE != null) { rmTransaction.CASHDATE = transaction.CASHDATE.GetValueOrDefault().ToString("yyyy-MM-dd");; } if (transaction.CHEKDATE != null) { rmTransaction.CHEKDATE = transaction.CHEKDATE.GetValueOrDefault().ToString("yyyy-MM-dd");; } if (transaction.CRCARDDT != null) { rmTransaction.CRCARDDT = transaction.CRCARDDT.GetValueOrDefault().ToString("yyyy-MM-dd");; } if (transaction.DUEDATE != null) { rmTransaction.DUEDATE = transaction.DUEDATE.GetValueOrDefault().ToString("yyyy-MM-dd");; } if (transaction.DISCDATE != null) { rmTransaction.DISCDATE = transaction.DISCDATE.GetValueOrDefault().ToString("yyyy-MM-dd");; } if (transaction.EXPNDATE != null) { rmTransaction.EXPNDATE = transaction.EXPNDATE.GetValueOrDefault().ToString("yyyy-MM-dd");; } if (transaction.EXCHDATE != null) { rmTransaction.EXCHDATE = transaction.EXCHDATE.GetValueOrDefault().ToString("yyyy-MM-dd");; } if (transaction.TIME1 != null) { rmTransaction.TIME1 = transaction.TIME1.GetValueOrDefault().ToString("yyyy-MM-dd"); } return(rmTransaction); } catch (Exception) { //logW.LogExeption("Econnect", 2, ex); throw; } }
/// <summary> /// /// </summary> /// <param name="header"></param> /// <param name="Distrib"></param> /// <param name="Tax"></param> /// <param name="company"></param> /// <returns></returns> public Response CreateRMTransaction(RMTransactionHeader header, RMTransactionDist[] Distrib, RMDocumentTaxes[] Tax, string company) { RMTransactionCreate rmTranCreate = new RMTransactionCreate(); return(rmTranCreate.TransactionCreate(header, Distrib, Tax, company)); }