public static GcpBEDocumentoVenda DocvendaToBEDocVenda(Model.DocVenda doc) { GcpBEDocumentoVenda ret = new GcpBEDocumentoVenda(); ret.set_ID(doc.id); ret.set_Entidade(doc.Entidade); ret.set_NumDoc(doc.NumDoc); ret.set_DataDoc(doc.Data); ret.set_TotalMerc(doc.TotalMerc); ret.set_Serie(doc.Serie); GcpBELinhasDocumentoVenda linhasDoc = new GcpBELinhasDocumentoVenda(); foreach(Lib_Primavera.Model.LinhaDocVenda linha in doc.LinhasDoc){ GcpBELinhaDocumentoVenda l = new GcpBELinhaDocumentoVenda(); l.set_AutoID(linha.IdCabecDoc); l.set_Artigo(linha.CodArtigo); l.set_Descricao(linha.DescArtigo); l.set_Quantidade(linha.Quantidade); l.set_Unidade(linha.Unidade); l.set_Desconto1(Convert.ToSingle(linha.Desconto)); l.set_PrecUnit(linha.PrecoUnitario); l.set_TotalIliquido(linha.TotalILiquido); l.set_TotalDC(linha.TotalLiquido); linhasDoc.Insere(l); } ret.set_Linhas(linhasDoc); return ret; }
public static Model.RespostaErro Encomendas_New(Model.DocVenda dv) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); List<Model.LinhaDocVenda> lstlindv = new List<Model.LinhaDocVenda>(); try { if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { // Atribui valores ao cabecalho do doc //myEnc.set_DataDoc(dv.Data); myEnc.set_Entidade(dv.Entidade); myEnc.set_TipoEntidade("C"); myEnc.set_Tipodoc("FA"); myEnc.set_Serie(dv.Serie); myEnc.set_DataDoc(DateTime.Today); // Linhas do documento para a lista de linhas lstlindv = dv.LinhasDoc; PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc, rl); foreach (Model.LinhaDocVenda lin in lstlindv) { PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.CodArtigo, lin.Quantidade, "", "", lin.PrecoUnitario, lin.Desconto); } // PriEngine.Engine.Comercial.Compras.TransformaDocumento( PriEngine.Engine.IniciaTransaccao(); PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc, "Teste"); PriEngine.Engine.TerminaTransaccao(); erro.Erro = 0; erro.Descricao = "Sucesso"; return erro; } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return erro; } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); PriEngine.Engine.DesfazTransaccao(); erro.Erro = 1; erro.Descricao = ex.Message; return erro; } }
public static Model.RespostaErro Encomendas_New(Model.DocVenda dv) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); List<Model.LinhaDocVenda> lstlindv = new List<Model.LinhaDocVenda>(); try { if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { // Atribui valores ao cabecalho do doc //myEnc.set_DataDoc(dv.Data); string serie = "C"; double desconto = 0.0; string armazem = "A2"; myEnc.set_Entidade(dv.Entidade); myEnc.set_Serie(serie); //myEnc.set_Serie(dv.Serie); myEnc.set_Tipodoc(dv.DocType); myEnc.set_TipoEntidade("C"); // Linhas do documento para a lista de linhas lstlindv = dv.LinhasDoc; PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc, rl); double pvp = 0; if (dv.LinhasDoc != null) foreach (Model.LinhaDocVenda lin in lstlindv) { pvp = PriEngine.Engine.Comercial.ArtigosPrecos.DaPrecoArtigoMoeda(lin.CodArtigo, "EUR", "UN", "PVP1", false, 0); PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.CodArtigo, lin.Quantidade, armazem, "", pvp, desconto); } else { List<Model.Artigo> temp = GetCarrinhoUser(dv.Entidade).ID_Produtos; foreach (Model.Artigo lin in temp) { pvp = PriEngine.Engine.Comercial.ArtigosPrecos.DaPrecoArtigoMoeda(lin.ID, "EUR", "UN", "PVP1", false, 0); PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.ID, Int32.Parse(lin.Quantidade), lin.Armazem, "", pvp, desconto); } } // PriEngine.Engine.Comercial.Compras.TransformaDocumento( PriEngine.Engine.IniciaTransaccao(); PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc, "Teste"); PriEngine.Engine.TerminaTransaccao(); erro.Erro = 0; erro.Descricao = "Sucesso"; return erro; } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return erro; } } catch (Exception ex) { try { PriEngine.Engine.DesfazTransaccao(); } catch { } erro.Erro = 1; erro.Descricao = ex.Message; return erro; } }
public static Model.RespostaErro Encomendas_New(ref Model.DocVenda dv) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); List<Model.LinhaDocVenda> lstlindv = new List<Model.LinhaDocVenda>(); bool iniciouTransaccao = false; try { if (PriEngine.InitializeCompany(SINF.Properties.Settings.Default.Company.Trim(), SINF.Properties.Settings.Default.User.Trim(), SINF.Properties.Settings.Default.Password.Trim()) == true) { // Atribui valores ao cabecalho do doc //myEnc.set_DataDoc(dv.Data); myEnc.set_Entidade(dv.Entidade); myEnc.set_Serie("A"); myEnc.set_Tipodoc("ECL"); //encomenda cliente myEnc.set_TipoEntidade("C"); // Linhas do documento para a lista de linhas lstlindv = dv.LinhasDoc; PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc, rl); dv.Data = myEnc.get_DataDoc(); dv.id = myEnc.get_ID(); foreach (Model.LinhaDocVenda lin in lstlindv) { PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.CodArtigo, lin.Quantidade, "", "", lin.PrecoUnitario, lin.Desconto); } // PriEngine.Engine.Comercial.Compras.TransformaDocumento( /*GcpBEDocumentoVenda myFac = new GcpBEDocumentoVenda(); myFac.set_Entidade(dv.Entidade); myFac.set_Serie("A"); myEnc.set_Tipodoc("FS"); //factura simplificada myFac.set_TipoEntidade("C"); myFac.set_IdDocOrigem(dv.id); PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myFac, rl); foreach (Model.LinhaDocVenda lin in lstlindv) { PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myFac, lin.CodArtigo, lin.Quantidade, "", "", lin.PrecoUnitario, lin.Desconto); }*/ PriEngine.Engine.IniciaTransaccao(); iniciouTransaccao = true; PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc, "Teste"); //PriEngine.Engine.Comercial.Vendas.Actualiza(myFac, "Teste"); PriEngine.Engine.TerminaTransaccao(); iniciouTransaccao = false; //dv.IdFactura = myFac.get_ID(); erro.Erro = 0; erro.Descricao = "Sucesso"; return erro; } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return erro; } } catch (Exception ex) { if(iniciouTransaccao) PriEngine.Engine.DesfazTransaccao(); erro.Erro = 1; erro.Descricao = ex.Message; return erro; } }
public static Model.RespostaErro Encomendas_New(Model.DocVenda dv) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); List<Model.LinhaDocVenda> lstlindv = new List<Model.LinhaDocVenda>(); bool iniciaTransaccao = false; try { if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { // Atribui valores ao cabecalho do doc //myEnc.set_DataDoc(dv.Data); myEnc.set_Entidade(dv.Entidade); myEnc.set_Serie("C"); myEnc.set_Tipodoc("ECL"); myEnc.set_TipoEntidade("C"); myEnc.set_CondPag("1"); myEnc.set_Seccao("2"); myEnc.set_Origem("Web"); // Linhas do documento para a lista de linhas lstlindv = dv.LinhasDoc; StdBELista objList; PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc, rl); foreach (Model.LinhaDocVenda lin in lstlindv) { string st = "SELECT PVP1 From ArtigoMoeda WHERE Artigo='" + lin.CodArtigo + "'"; objList = PriEngine.Engine.Consulta(st); double pvp = objList.Valor("PVP1"); PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.CodArtigo, lin.Quantidade, "", "", pvp, 0); } // PriEngine.Engine.Comercial.Compras.TransformaDocumento( iniciaTransaccao = true; PriEngine.Engine.IniciaTransaccao(); PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc, "Teste"); PriEngine.Engine.TerminaTransaccao(); iniciaTransaccao = false; erro.Erro = 0; erro.Descricao = "Sucesso"; return erro; } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return erro; } } catch (Exception ex) { if (iniciaTransaccao) PriEngine.Engine.DesfazTransaccao(); erro.Erro = 1; erro.Descricao = ex.Message; return erro; } }
public static Model.RespostaErro Encomendas_New(Model.DocVenda dv) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBEDocumentoVenda myFac = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); GcpBESerie serie = new GcpBESerie(); List<Model.LinhaDocVenda> lstlindv = new List<Model.LinhaDocVenda>(); try { if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { if (PriEngine.Engine.Comercial.Vendas.Existe("000", "ECL", "A", dv.NumDoc)) { myEnc = PriEngine.Engine.Comercial.Vendas.Edita("000", "ECL", "A", dv.NumDoc); } myFac.set_NumDoc(myEnc.get_NumDoc()); myFac.set_Entidade(dv.Entidade); myFac.set_TipoEntidade("C"); myFac.set_Tipodoc("FA"); myFac.set_Serie("D"); myFac.set_Assinatura(myEnc.get_Assinatura()); //Falta a Série do Doc Destino.Sugiro a utilização do método SeriePorDefeito mas para isso tb é necessario a data do doc destino myFac.set_DataDoc(new DateTime()); serie.set_SeriePorDefeito(true); //Usar o preenche dados relacionados do Doc Destino String avisos = ""; PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myFac, PreencheRelacaoVendas.vdDadosTodos); //PriEngine.Engine.Comercial.Vendas.Actualiza(myFac, avisos); erro.Descricao += "Actualiza: " + avisos; List<GcpBEDocumentoVenda> l = new List<GcpBEDocumentoVenda>(); l.Add(myEnc); //Deve ser usado o strAvisos e passar como parametro no metodo //Devem ser removidas as transações String strAvisos = ""; //PriEngine.Engine.IniciaTransaccao(); PriEngine.Engine.Comercial.Vendas.TransformaDocumentoEX(l.ToArray(), myFac, true, strAvisos); //PriEngine.Engine.TerminaTransaccao(); if (strAvisos.Length > 0) { erro.Erro = 1; erro.Descricao +=" Transforma Avsos: "+ strAvisos; } else { erro.Erro = 0; erro.Descricao = "Sucesso"; } return erro; } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return erro; } } catch (Exception ex) { erro.Erro = 1; erro.Descricao +=" Excecao: " +ex.Message; return erro; } }
public Lib_Primavera.Model.RespostaErro encomendaPrimavera(string userID, string name, string email, string nif, string address, string postal, string payment, List <Purchase> products) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); List <Model.LinhaDocVenda> lstlindv = new List <Model.LinhaDocVenda>(); try { if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { myEnc.set_Entidade(userID); //myEnc.set_NumContribuinte(nif); myEnc.set_Tipodoc("ECL"); //Encomenda de cliente myEnc.set_TipoEntidade("C"); //Client if (payment.Equals("paypal")) { myEnc.set_ModoPag("TRA"); //Online transfer } else { myEnc.set_ModoPag("TRA"); //Online transfer } myEnc.set_CondPag("1"); //Request immediate payment. myEnc.set_DataDoc(DateTime.Today); myEnc.set_CodigoPostal(postal); myEnc.set_CodPostalEntrega(postal); myEnc.set_CodPostalLocalidadeEntrega(postal); myEnc.set_Morada(address); myEnc.set_MoradaEntrega(address); PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc); foreach (Purchase p in products) { PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, p.id, p.quantity, "", "", p.price, 0); } PriEngine.Engine.IniciaTransaccao(); PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc, "Teste"); PriEngine.Engine.TerminaTransaccao(); erro.Erro = 0; erro.Descricao = "Sucesso"; return(erro); } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return(erro); } } catch (Exception ex) { PriEngine.Engine.DesfazTransaccao(); erro.Erro = 1; erro.Descricao = ex.Message; return(erro); } }
public static Model.RespostaErro Encomendas_New(Model.DocVenda dv) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); List <Model.LinhaDocVenda> lstlindv = new List <Model.LinhaDocVenda>(); try { if (PriEngine.InitializeCompany(ElectroSinf.Properties.Settings.Default.Company.Trim(), ElectroSinf.Properties.Settings.Default.User.Trim(), ElectroSinf.Properties.Settings.Default.Password.Trim()) == true) { //atributos que por enquanto não são dinamicos: string serie = "1"; double desconto = 0.0; string armazem = "A1"; // Atribui valores ao cabecalho do doc myEnc.set_Entidade(dv.Entidade); myEnc.set_Serie(serie); myEnc.set_Tipodoc(dv.DocType); myEnc.set_TipoEntidade("C"); // Linhas do documento para a lista de linhas //lstlindv = dv.LinhasDoc; PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc, rl); double pvp1 = 0, quantidade = 0; string idArtigo = ""; int Stock = 0; StdBELista carrinho = PriEngine.Engine.Consulta("SELECT * FROM TDU_Carrinho WHERE CDU_IdCliente='" + dv.Entidade + "'"); while (!carrinho.NoFim()) { idArtigo = carrinho.Valor("CDU_IdArtigo"); quantidade = Convert.ToDouble(carrinho.Valor("CDU_Quantidade")); armazem = carrinho.Valor("CDU_Armazem"); Stock = (int)PriEngine.Engine.Comercial.ArtigosArmazens.DaStockArtigo(idArtigo); //ARMAZEM if (quantidade > Stock) { erro.Erro = 1; erro.Descricao = "quantidadeErrada"; return(erro); } pvp1 = PriEngine.Engine.Comercial.ArtigosPrecos.DaPrecoArtigoMoeda(idArtigo, "EUR", "UN", "PVP1", false, 0); PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, idArtigo, quantidade, armazem, "", pvp1, desconto); carrinho.Seguinte(); } /* * foreach (Model.LinhaDocVenda lin in lstlindv) * { * pvp1 = PriEngine.Engine.Comercial.ArtigosPrecos.DaPrecoArtigoMoeda(lin.CodArtigo, "EUR", "UN", "PVP1", false, 0); * PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.CodArtigo, lin.Quantidade, armazem, "", pvp1, desconto); * } */ PriEngine.Engine.IniciaTransaccao(); PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc, "Teste"); PriEngine.Engine.TerminaTransaccao(); erro.Erro = 0; erro.Descricao = "Sucesso"; carrinho.Inicio(); while (!carrinho.NoFim()) { idArtigo = carrinho.Valor("CDU_IdArtigo"); StdBECamposChave tdu_carrinho = new StdBECamposChave(); tdu_carrinho.AddCampoChave("CDU_IdCliente", dv.Entidade); tdu_carrinho.AddCampoChave("CDU_IdArtigo", idArtigo); PriEngine.Engine.TabelasUtilizador.Remove("TDU_Carrinho", tdu_carrinho); carrinho.Seguinte(); } return(erro); } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return(erro); } } catch (Exception ex) { try { PriEngine.Engine.DesfazTransaccao(); } catch (Exception) { } erro.Erro = 1; erro.Descricao = ex.Message; Console.Write(erro.Descricao); return(erro); } }
// ------ Documentos de venda ---------------------- public static Model.RespostaErro Encomendas_New(Model.DocVenda dv) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); List<Model.LinhaDocVenda> lstlindv = new List<Model.LinhaDocVenda>(); try { if (PriEngine.InitializeCompany(COMPANYNAME, USERNAME, PASSWORD) == true) { // Atribui valores ao cabecalho do doc //myEnc.set_DataDoc(dv.Data); myEnc.set_Entidade(dv.Entidade); myEnc.set_Serie(dv.Serie); myEnc.set_Tipodoc("ECL"); myEnc.set_TipoEntidade("C"); myEnc.set_CondPag(dv.CondPag); //pronto pagamento myEnc.set_ModoPag(dv.ModoPag); // Linhas do documento para a lista de linhas lstlindv = dv.LinhasDoc; PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc, rl); foreach (Model.LinhaDocVenda lin in lstlindv) { PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.CodArtigo, lin.Quantidade, "", "", lin.PrecoUnitario, lin.Desconto); } // PriEngine.Engine.Comercial.Compras.TransformaDocumento( PriEngine.Engine.IniciaTransaccao(); PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc, "Teste"); PriEngine.Engine.TerminaTransaccao(); erro.Erro = 0; erro.Descricao = "Sucesso"; return erro; } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return erro; } } catch (Exception ex) { PriEngine.Engine.DesfazTransaccao(); erro.Erro = 1; erro.Descricao = ex.Message; return erro; } }
public static Model.RespostaErro Encomendas_New(Model.DocVenda dv) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); GcpBEDocumentoVenda myEnc = new GcpBEDocumentoVenda(); GcpBELinhaDocumentoVenda myLin = new GcpBELinhaDocumentoVenda(); GcpBELinhasDocumentoVenda myLinhas = new GcpBELinhasDocumentoVenda(); //PreencheRelacaoVendas rl = new PreencheRelacaoVendas(); List <Model.LinhaDocVenda> lstlindv = new List <Model.LinhaDocVenda>(); try { if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { // Linhas do documento para a lista de linhas lstlindv = dv.LinhasDoc; if (lstlindv == null || lstlindv.Count == 0) { erro.Erro = 1; erro.Descricao = "Cannot make an order from an empty proposal."; return(erro); } //A designação fiscal não se encontra atribuída // Atribui valores ao cabecalho do doc //myEnc.set_DataDoc(dv.Data); myEnc.set_Entidade(dv.Entidade); myEnc.set_Serie("A"); myEnc.set_Tipodoc("ECL"); myEnc.set_TipoEntidade("C"); //PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc, rl); PriEngine.Engine.Comercial.Vendas.PreencheDadosRelacionados(myEnc); foreach (Model.LinhaDocVenda lin in lstlindv) { PriEngine.Engine.Comercial.Vendas.AdicionaLinha(myEnc, lin.CodArtigo, lin.Quantidade, "", "", lin.PrecoUnitario, lin.Desconto); } // PriEngine.Engine.Comercial.Compras.TransformaDocumento( PriEngine.Engine.IniciaTransaccao(); //PriEngine.Engine.Comercial.Vendas.Edita Actualiza(myEnc, "Teste"); PriEngine.Engine.Comercial.Vendas.Actualiza(myEnc); PriEngine.Engine.TerminaTransaccao(); erro.Erro = 0; erro.Descricao = "Sucesso"; return(erro); } else { erro.Erro = 1; erro.Descricao = "Erro ao abrir empresa"; return(erro); } } catch (Exception ex) { PriEngine.Engine.DesfazTransaccao(); erro.Erro = 1; erro.Descricao = ex.Message; return(erro); } }
public static Boolean UpdateLinhaDocEstado(string codArtigo, int estado, string numDoc, string descricao) { Lib_Primavera.Model.RespostaErro erro = new Model.RespostaErro(); StdBELista LinhasDoc; StdBELista IDcabecDoc; var dv = new GcpBEDocumentoVenda(); if (PriEngine.InitializeCompany(FirstREST.Properties.Settings.Default.Company.Trim(), FirstREST.Properties.Settings.Default.User.Trim(), FirstREST.Properties.Settings.Default.Password.Trim()) == true) { IDcabecDoc = PriEngine.Engine.Consulta("SELECT id from CabecDoc where TipoDoc='FA' AND NumDoc='" + numDoc + "'"); string idCabecDoc = IDcabecDoc.Valor("id"); GcpBELinhaDocumentoVenda ld = new GcpBELinhaDocumentoVenda(); LinhasDoc = PriEngine.Engine.Consulta("SELECT idCabecDoc, Artigo, Descricao, Quantidade, Unidade, PrecUnit, Desconto1, TotalILiquido, PrecoLiquido from LinhasDoc where IdCabecDoc='" + idCabecDoc + "'" + "AND Artigo=" + codArtigo); ld.set_Artigo(LinhasDoc.Valor("Arigo")); ld.set_Descricao(LinhasDoc.Valor("Descricao")); ld.set_Quantidade(LinhasDoc.Valor("Quantidade")); ld.set_Unidade(LinhasDoc.Valor("Unidade")); ld.set_PrecUnit(LinhasDoc.Valor("PrecUnit")); ld.set_Desconto1(LinhasDoc.Valor("Desconto1")); ld.set_TotalIliquido(LinhasDoc.Valor("TotalIliquido")); ld.set_PrecoLiquido(LinhasDoc.Valor("PrecoLiquido")); StdBECampos campos = new StdBECampos(); StdBECampo camp_status = new StdBECampo(); camp_status.Nome = "CDU_Status"; camp_status.Valor = estado; campos.Insere(camp_status); StdBECampo camp_desc = new StdBECampo(); camp_desc.Nome = ("CDU_Descricao"); camp_desc.Valor = descricao; campos.Insere(camp_desc); ld.set_CamposUtil(campos); // PriEngine.Engine.Comercial.Vendas. return true; } return false; }