Fórum
Ver pergunta

Inserir DataDoc em GcpBEPendente (C# / V9)   

83 visualizações
0
0

Boa tarde a todos,

Estou a tentar criar um documento pendente mas não estou a conseguir inserir a data do documento. A data a inserir está no formato correto e é realizada a conversão de string para DateTime.

Tentei também inserir a data no documento recorrendo ao Conversions.ToDate() do VBA e não insere a data.

Código:

GcpBEPendente pendente = new GcpBEPendente();

pendente.set_Tipodoc(doc.tipoDoc);
pendente.set_Serie(doc.serie);

//Insere o Fornecedor através do Num Contrib
pendente.set_Entidade(getEntidade(doc.entidade));

pendente.set_Estado(“PEN”);
pendente.set_Filial(“000”);
pendente.set_Moeda(“EUR”);
pendente.set_TipoConta(“CCF”);
pendente.set_TipoEntidade(“F”);

DateTime dDataDoc;
dDataDoc = Convert.ToDateTime(doc.dataDoc);

pendente.set_DataDoc(dDataDoc);
pendente.set_DataIntroducao(DateTime.Today);
pendente.set_NumDoc(doc.numDocExt);

priEngine.Comercial.Pendentes.PreencheDadosRelacionados(pendente);

Faça login para poder traduzir
Integração
Marcado como spam
Criado há 4 anos e 9 meses pedrogodinho
pedrogodinho Iniciante
Comentários
Bom dia, qual o erro que ocorre? A que querreponde o objecto "doc"? Qual o tipo da propriedade "dataDoc"?
4 anos e 9 meses
danielvieira-1
    Bom dia Daniel, Peço desculpas por só responder agora mas estive de férias. Não ocorre nenhum erro, o documento é gravado com sucesso, apenas não insere a data associada ao documento a gerar. A aplicação basicamente carrega um ficheiro de Excel para um DataGridView e depois importa os documentos existentes no ficheiro. Existe uma classe para o cabeçalho e outra para as linhas, de forma a conseguir agrupar as linhas de um documento. Estes documentos são guardados numa lista que é iterada no momento da criação do documento. O objecto doc é do tipo Document (classe criada para o efeito com as propriedades do cabeçalho). Relativamente ao tipo de propriedade do "dataDoc" já tentei com DateTime e com String. Neste momento está como String e é realizada a conversão.
    4 anos e 9 meses
    pedrogodinho
      2 respostas
      0
      Resposta privada

      Bom dia Pedro, podes sempre responder a questão do Daniel de forma que conseguimos te ajudar.
      De qualquer forma usa sempre o método da plataforma para conversão dos dados.
      Para o teu caso seria qualquer coisa como PSO.Utils.FData();
      Ex: pendente.set_DataDoc(PSO.Utils.FData(dDataDoc));

      Espero ter ajudado.

      Faça login para poder traduzir
      Marcado como spam
      Criado há 4 anos e 9 meses meidyricardo-2
      m
      meidyricardo-2 Iniciante
        Comentários
        Bom dia Meidy, acabei de testar a tua sugestão e contudo, o documento volta a ficar com a data de hoje. A configuração da série está correta para permitir a alteração da data do documento.
        4 anos e 9 meses
        pedrogodinho
          0
          Resposta privada

          Update: Testei a criação de um documento de Venda e de Compra e insere a data do documento se problemas. Quando tento inserir um pendente do tipo FAF ou NCF é que surge o problema com a data.

          Solução:
          priEngine.Comercial.Historico.ActualizaValorAtributoID(pendente.get_IdHistorico(), "DataDoc", dDataDoc);
          priEngine.Comercial.Pendentes.ActualizaValorAtributoID(pendente.get_IdHistorico(), "PEN", "DataDoc", dDataDoc);

          Para inserir a data no documento Pendente, é necessário editar a tabela Histórico...
          Obrigado na mesma pessoal.

          Faça login para poder traduzir
          Marcado como spam
          Criado há 4 anos e 9 meses pedrogodinho
          pedrogodinho Iniciante