private SAPbobsCOM.BankPages PopulateBankPages(ExtractBanking pObjExtractBanking) { mObjBankPage = (SAPbobsCOM.BankPages)mObjCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oBankPages); mObjBankPage.AccountCode = pObjExtractBanking.AccountCode; mObjBankPage.DueDate = pObjExtractBanking.Date; mObjBankPage.Reference = pObjExtractBanking.Reference; mObjBankPage.Memo = pObjExtractBanking.Detail; if (pObjExtractBanking.DebitAmount == 0 && pObjExtractBanking.CreditAmount == 0) { } if (pObjExtractBanking.DebitAmount > 0) { mObjBankPage.DebitAmount = pObjExtractBanking.DebitAmount; } if (pObjExtractBanking.CreditAmount > 0) { mObjBankPage.CreditAmount = pObjExtractBanking.CreditAmount; } return(mObjBankPage); }
private void ReadFileXlsx_Bancomer(string pStrPath) { mObjForm.Freeze(true); string[] ArrStrWords; mIntCountCarga = 0; mIntTotalCarga = 0; //DataTable lDtbFileBancomer = new DataTable(); try { ArrStrWords = System.IO.File.ReadAllLines(pStrPath); //lDtbFileBancomer = GetDtbFileBancomer(pStrPath); mObjProgressBar = new ProgressBarManager(Application.SBO_Application, "Cargando extractos bancarios", ArrStrWords.Length); foreach (ExtractBanking lObjExtractBanking in GetBancomerExtractBanking(ArrStrWords)) { mObjBankPage = PopulateBankPages(lObjExtractBanking); int result = mObjBankPage.Add(); mIntTotalCarga++; if (result == 0) { mIntCountCarga++; } if (result != 0) { //Application.SBO_Application.MessageBox("No se cargo el movimiento número: " + mIntTotalCarga); Application.SBO_Application.StatusBar.SetText("No se cargo el movimiento número: " + mIntTotalCarga, SAPbouiCOM.BoMessageTime.bmt_Long, SAPbouiCOM.BoStatusBarMessageType.smt_Error); } mObjProgressBar.NextPosition(); } ((SAPbouiCOM.EditText)mObjForm.Items.Item("18").Specific).Value = ""; ((SAPbouiCOM.EditText)mObjForm.Items.Item("18").Specific).Value = lStrAccountCode; } catch (Exception ex) { Application.SBO_Application.StatusBar.SetText(ex.Message, SAPbouiCOM.BoMessageTime.bmt_Short, SAPbouiCOM.BoStatusBarMessageType.smt_Error); BankStatementsLogService.WriteError(ex.Message); } finally { mObjForm.Freeze(false); MemoryUtility.ReleaseComObject(mObjBankPage); } Application.SBO_Application.MessageBox("Proceso Terminado. Se cargaron " + mIntCountCarga + " de " + mIntTotalCarga + " movimientos bancarios."); BankStatementsLogService.WriteSuccess("Proceso Terminado. Se cargaron " + mIntCountCarga + " de " + mIntTotalCarga + " movimientos bancarios."); }
public string funEnviarExtBancarioSAP() { try { string mError = ""; int iError = 0; csAccesoDatos.proIniciarSesionSAP(); SAPbobsCOM.BankPages varOBNK = csConexionSap.objConexionSap.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oBankPages); //Recuperamos informacion de los detalles del movimiento List <clsGbaExtBancarioDet> objDetalle = new List <clsGbaExtBancarioDet>(); clsGbaExtBancarioDet.proListar(CabCodigo, out objDetalle); //Recorremos las lineas de detalle del extracto bancario foreach (clsGbaExtBancarioDet objFilaDetalle in objDetalle) { if (funVerificarExtBancarioSAP(DocNombre, CabNumero, objFilaDetalle.DetSecuencia).Equals(0)) { varOBNK.AccountCode = CueCodigo; varOBNK.DueDate = objFilaDetalle.DetFecha; varOBNK.Reference = objFilaDetalle.DetReferencia; varOBNK.Memo = objFilaDetalle.DetComentario; varOBNK.ExternalCode = DocNombre + " - " + CabNumero.ToString() + " - " + objFilaDetalle.DetSecuencia.ToString(); varOBNK.DebitAmount = double.Parse(objFilaDetalle.DetDebe.ToString()); varOBNK.CreditAmount = double.Parse(objFilaDetalle.DetHaber.ToString()); iError = varOBNK.Add(); if (!iError.Equals(0)) { csConexionSap.objConexionSap.GetLastError(out iError, out mError); return(mError); } } } csAccesoDatos.funIniciarSesion("conDBUmbrella"); csAccesoDatos.GDatos.funEjecutarSql(string.Format("Update GBA_CABEXTBANCARIO Set EstCodigo = 'Sap' Where CabCodigo = {0}", CabCodigo)); csAccesoDatos.proFinalizarSesion(); return(mError); } catch (Exception) { throw; } finally { csAccesoDatos.proFinalizarSesionSAP(); } }
/// <summary> /// Reads the contents of the selected file and parses the bank pages. /// </summary> /// <param name="pStrPath">The absolute path to the file.</param> private void ReadFile(string pStrPath) { mIntCountCarga = 0; mIntTotalCarga = 0; try { IList <BankStatement> mLstObjLines = mObjExtractFormatter.ParseFile(pStrPath, mEdtAccountField.Value); mObjProgressBar = new ProgressBarManager(Application.SBO_Application, "Cargando extractos bancarios", mLstObjLines.Count); foreach (BankStatement lObjlObjExtractBanking in mLstObjLines) { mObjBankPage = PopulateBankPages(lObjlObjExtractBanking); int result = mObjBankPage.Add(); mIntTotalCarga++; if (result == 0) { mIntCountCarga++; } if (result != 0) { Application.SBO_Application.MessageBox("No se cargo el movimiento número: " + mIntTotalCarga); Application.SBO_Application.StatusBar.SetText("No se cargo el movimiento número: " + mIntTotalCarga, SAPbouiCOM.BoMessageTime.bmt_Long, SAPbouiCOM.BoStatusBarMessageType.smt_Error); } mObjProgressBar.NextPosition(); } ((SAPbouiCOM.EditText)mObjForm.Items.Item(STR_SEARCH_UID).Specific).Value = ""; ((SAPbouiCOM.EditText)mObjForm.Items.Item(STR_SEARCH_UID).Specific).Value = lStrAccountCode; } catch (Exception ex) { Application.SBO_Application.StatusBar.SetText(ex.Message, SAPbouiCOM.BoMessageTime.bmt_Short, SAPbouiCOM.BoStatusBarMessageType.smt_Error); LogUtility.WriteError(string.Format("[BankExtractsImporting - ReadFile] Error al leer el archivo: {0}", ex.Message)); } finally { mObjForm.Freeze(false); MemoryUtility.ReleaseComObject(mObjBankPage); } Application.SBO_Application.MessageBox("Proceso Terminado. Se cargaron " + mIntCountCarga + " de " + mIntTotalCarga + " movimientos bancarios."); }