Fórum
Ver pergunta

Clonar artigo para outra empresa.   

110 visualizações
1
0

Estou a tentar clonar um artigo da empresa A para a empresa B. Aparentemente corre tudo bem pois não retorna erro algum, no entanto, o artigo não é criado na empresa B.

Abaixo um exemplo do código:

            string avisos = string.Empty;
            string user;
            string pass;
            user = "integrador";
            pass = "pass";


            GcpBEArtigo Artigo = null;
            GcpBEArtigo NovoArtigo = null;

            Database EmpresaA = new Database();
            Database EmpresaB = new Database();
            try
            {
    

                if (!EmpresaA.AbrePlataforma("EmpresaA", user, pass))
                {
                    MessageBox.Show("Erro ao abrir a empresa de origem.",
                            Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }

                if (!EmpresaB.AbrePlataforma("EmpresaB", user, pass))
                {
                    MessageBox.Show("Erro ao abrir a empresa de origem.",
                            Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }

                Artigo = EmpresaA.MotorPrimavera.Comercial.Artigos.Edita("ART1");

                NovoArtigo = new GcpBEArtigo();
                NovoArtigo = EmpresaB.PlataformaPrimavera.FuncoesGlobais.ClonaObjecto(Artigo);



                if (EmpresaB.MotorPrimavera.Comercial.Artigos.ValidaActualizacao(NovoArtigo, ref avisos))
                {

                    EmpresaB.MotorPrimavera.Comercial.Artigos.Actualiza(NovoArtigo);

                    if (avisos.Length > 0)
                    {
                        MessageBox.Show("Avisos artigo. \n" + avisos);
                    }
                    else
                    {
                        MessageBox.Show("artigo Gravado");
                    }

                }
                else
                {

                    MessageBox.Show("Erro ao replicar artigo " + Artigo,
                            Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
                }


            }
            catch (Exception ex)
            {

                throw new Exception(ex.Message.ToString());
            }finally
            {
                EmpresaA.FechaPlataforma();
                EmpresaB.FechaPlataforma();

            }

 

Obrigado.

Faça login para poder traduzir
V10
Geral
Marcado como spam
Criado há 5 anos e 8 meses nunogonalves
nunogonalves Responsiveness Member
Comentários
Boas, já tentaste validar qual a informação que efectivamente vai no objeto do artigo novo? Tenta fazer debug e validar se realmente o objecto tem as propriedados do artigo "Art1" , pode o clonar do objecto não estar a copiar tudo.
5 anos e 8 meses
andralves
    Boa tarde @andralves! Sim, o "NovoArtigo" tem as propriedades preenchidas.
    5 anos e 8 meses
    nunogonalves
      @sereno, alguma sugestão?
      5 anos e 8 meses
      nunogonalves
        1 respostas
        1
        Resposta privada

        Isso deve ser por causa da propriedade EmModoEdicao vir a True por editares o artigo. Muda para False antes de gravar e já deve dar.

        Faça login para poder traduzir
        Marcado como spam
        Criado há 5 anos e 8 meses sergiosereno
        sergiosereno Most Valuable Professional
          Comentários
          Perfeito @sereno! É exatamente isso. Obrigado!
          5 anos e 8 meses
          nunogonalves