public PrimaveraResultStructure GravaDocumentoTesouraria(string DocumentoTesouraria, string ContaBancaria, string MovimentoBancario, string Rubrica, double Valor, DateTime Data, string FicheiroBMEPS, string RefATM) { string strSerieDocTes, strErro = "", strAvisos = "", strSQL = ""; double dblValor; PrimaveraResultStructure result; GcpBEDocumentoTesouraria documentoTesouraria = new GcpBEDocumentoTesouraria(); StdBELista lstLista; strSerieDocTes = _erpBs.Comercial.Series.DaSerieDefeito("B", DocumentoTesouraria); // VERIFICA SE AS TAXAS DO FICHEIRO JÁ FORAM INTEGRADAS strSQL = "SELECT TIPODOC, SERIE, NUMDOC, CONTAORIGEM FROM CabecTesouraria WHERE CDU_FicheiroBMEPS = '" + FicheiroBMEPS + "'"; lstLista = _erpBs.Consulta(strSQL); //SE JÁ INTEGROU FICHEIRO, ENTÃO NÃO VOLTA A INTEGRAR if (lstLista.NumLinhas() > 0) { lstLista.Inicio(); return new PrimaveraResultStructure { codigo = 3, descricao = "Aviso: Doc. Tesouraria com Taxas já existia (Conta: " + lstLista.Valor("CONTAORIGEM") + ") - " + lstLista.Valor("TipoDoc") + " " + lstLista.Valor("SERIE") + "/" + lstLista.Valor("NUMDOC") + "" }; } //SE NÃO EXISTE DOCUMENTO, ENTÃO CRIA NOVO DOCUMENTO documentoTesouraria.set_EmModoEdicao(false); documentoTesouraria.set_ModuloOrigem("B"); documentoTesouraria.set_Filial("000"); documentoTesouraria.set_TipoLancamento("000"); documentoTesouraria.set_Tipodoc(DocumentoTesouraria); documentoTesouraria.set_Serie(strSerieDocTes); documentoTesouraria.set_Data(Data); documentoTesouraria.set_Moeda(_erpBs.Contexto.MoedaBase); documentoTesouraria.set_Cambio(_erpBs.Contexto.MBaseCambioCompra); documentoTesouraria.set_CambioMBase(_erpBs.Contexto.MBaseCambioCompra); documentoTesouraria.set_CambioMAlt(_erpBs.Contexto.MAltCambioCompra); documentoTesouraria.set_AgrupaMovimentos(false); documentoTesouraria.set_Observacoes("Criado na integração do Ficheiro BMEPS. " + Environment.NewLine + "Taxas do ficheiro '" + FicheiroBMEPS + "'."); documentoTesouraria.get_CamposUtil().get_Item("CDU_FicheiroBMEPS").Valor = FicheiroBMEPS; _erpBs.Comercial.Tesouraria.AdicionaLinha(documentoTesouraria, MovimentoBancario, ContaBancaria, documentoTesouraria.get_Moeda(), Valor, "", "", Rubrica); try { _erpBs.Comercial.Tesouraria.Actualiza(documentoTesouraria, strAvisos); return result = new PrimaveraResultStructure() { codigo = 0, descricao = string.Format("- Doc. Tesouraria criado com Sucesso (Taxas BMEPS) - {0} {1}/{2} {3}", documentoTesouraria.get_Tipodoc(), documentoTesouraria.get_NumDoc(), documentoTesouraria.get_Serie(), strAvisos == "" ? strAvisos : "-Aviso: " + strAvisos) }; } catch (Exception ex) { return result = new PrimaveraResultStructure() { codigo = 3, descricao = string.Format("- Erro ao gravar documento tesouraria: {0}", ex.Message) }; } }
public PrimaveraResultStructure GravaLigacaoBancos(string TipoEntidade, string Entidade, string Moeda, double Valor, DateTime DataDoc, string IdDoc, string Instituto, string RefATM, string strTipoDocTes, string strContaBancaria, string strMovBancario, bool DocumentoAdiantamento = false) { PrimaveraResultStructure result; try { string strSerieDocTes, strErro = "", strAvisos = ""; GcpBEDocumentoTesouraria documentoTesouraria = new GcpBEDocumentoTesouraria(); strSerieDocTes = _erpBs.Comercial.Series.DaSerieDefeito("B", strTipoDocTes); //'SE O DOCUMENTO DE LOGISTICA FOR UMA ADIANTAMENTO if (DocumentoAdiantamento) Valor = Math.Abs(Valor); documentoTesouraria.set_EmModoEdicao(false); documentoTesouraria.set_ModuloOrigem("M"); documentoTesouraria.set_Filial("000"); documentoTesouraria.set_TipoLancamento("000"); documentoTesouraria.set_Tipodoc(strTipoDocTes); documentoTesouraria.set_Serie(strSerieDocTes); documentoTesouraria.set_Data(DataDoc); documentoTesouraria.set_TipoEntidade(TipoEntidade); documentoTesouraria.set_Entidade(Entidade); documentoTesouraria.set_ContaOrigem(strContaBancaria); documentoTesouraria.set_Moeda(Moeda); documentoTesouraria.set_Cambio(_erpBs.Contexto.MBaseCambioCompra); documentoTesouraria.set_CambioMBase(_erpBs.Contexto.MBaseCambioCompra); documentoTesouraria.set_CambioMAlt(_erpBs.Contexto.MAltCambioCompra); documentoTesouraria.set_IdDocOrigem(IdDoc); documentoTesouraria.set_AgrupaMovimentos(false); _erpBs.Comercial.Tesouraria.AdicionaLinha(documentoTesouraria, strMovBancario, strContaBancaria, _erpBs.Contexto.MoedaBase, Valor, TipoEntidade, Entidade); var linhas = documentoTesouraria.get_Linhas(); int count = 0; foreach (GcpBELinhaDocTesouraria linha in linhas) { if (count == 0) { linha.set_DataMovimento(DataDoc.ToString()); linha.set_DataValor(DataDoc.ToString()); linha.set_Cambio(_erpBs.Contexto.MBaseCambioCompra); linha.set_CambioMBase(_erpBs.Contexto.MBaseCambioCompra); linha.set_CambioMAlt(_erpBs.Contexto.MAltCambioCompra); linha.set_Descricao("Ref. ATM " + RefATM); } count++; } _erpBs.Comercial.Tesouraria.Actualiza(documentoTesouraria, strAvisos); return result = new PrimaveraResultStructure() { codigo = 0, descricao = string.Format("- Doc. Tesouraria criado com Sucesso (Entidade: {0} ) - {1} {2}/{3} {4}", documentoTesouraria.get_Entidade(), documentoTesouraria.get_Tipodoc(), documentoTesouraria.get_NumDoc(), documentoTesouraria.get_Serie(), strAvisos == "" ? strAvisos : "-Aviso: " + strAvisos) }; } catch (Exception ex) { return result = new PrimaveraResultStructure() { codigo = 3, descricao = string.Format("- Erro ao gravar documento tesouraria: {0}", ex.Message) }; } }