Fórum
Ver pergunta

Controlo Caracteres do codigo na Criação de cliente   

9 visualizações
0
♥ 0

boas,
ao criar um cliente é necessário controlar se o codigo de cliente tem caracteres ou não, o problema é que quando é criado no antes de criar não tem cancel para colocar-mos a true…
tentei forçar o codigo de cliente a vazio caso deteta-se para forçar o erro mas ele parece que grava antes do AntesDeCriar, quando é cliente novo nem sequer passa no AntesDeGravar e por serviço nem sequer existe o AntesDeCriar… segue abaixo o que estou a tentar

public override void AntesDeCriar(ExtensibilityEventArgs e)
        {
            bool result = this.Cliente.Cliente.All(Char.IsLetter);
            if (result == true)
            {
                throw new Exception("Codigo cliente contem letras deve modificar!");
            }
        }

 

Faça login para poder traduzir
V10
Marcado como spam
Criado há 1 mês e 2 dias jorgesilva
j
jorgesilva Jorge Silva Iniciante
2 respostas
0
Resposta privada

Está a criar o cliente por serviço ou pelos editores? Não estou a ter problemas em interromper o código durante o AntesDeGravar. Posso testar mais para ver onde o debugger pára primeiro, se no AntesDeCriar ou no AntesDeGravar.

Faça login para poder traduzir
Marcado como spam
Criado há 4 semanas e 12 horas ricardogiro
ricardogiro Ricardo Giro Loyal Contributor
    Comentários
    Neste caso é pelos editores, só se for algo nesta ultima versão que simplesmente não entra no antes de gravar quando estou a criar um novo cliente... apenas entra se for num cliente já existente
    3 semanas e 3 dias
    jorgesilva
      Parece bug então. Reporte no Support Space à Primavera
      2 semanas e 4 dias
      ricardogiro
        0
        Resposta privada

        Boa Tarde, neste caso tem de ser o AntesdeGravar tem que funcionar, já fiz isso n vezes... O AntesdeCriar senão me engano é ants de meter o codigo de cliente.

        Faça login para poder traduzir
        Marcado como spam
        Criado há 1 mês e 14 horas brunogomes
        brunogomes Bruno Gomes Most Valuable Professional
          Comentários
          Olá Bruno, eu antes de criar o codigo no AntesDeCriar já tinha experimentado no AntesDeGravar no entanto quando é um cliente novo ele nem entra no AntesDeGravar, não sei se será bug caso fosse suposto entrar, porque pela logica era bem mais facil ele fazer pelo AntesDeGravar por efetivamente usava o cancel=true Segue abaixo o que eu tenho ainda no AntesDeGravar mas que não entra quando é criação (confirmei com debug) public override void AntesDeGravar(ref bool Cancel, ExtensibilityEventArgs e) { bool result = this.Cliente.Cliente.All(Char.IsLetter); if (result == true) { Cancel = true; PSO.Dialogos.MostraAviso("Codigo cliente contem letras deve modificar!"); } }
          1 mês e 14 horas
          jorgesilva