| ♥ 0 | Agradecia a ajuda possível neste esclarecimento. O que estarei a fazer de errado ao passar o numero da cbl para um cdu no evento DepoisDeIntegrar? Na MessageBox aparece o numero correto mas depois não o escreve no cdu e não dá qualquer erro. {
public class PurchasesEditor : EditorCompras
{
public override void DepoisDeIntegrar(ExtensibilityEventArgs e)
{
try
{
bool PTtesteDoc = this.BSO.Consulta("Select TipoDocumento From DocumentosCompra Where Documento = '" + this.DocumentoCompra.Tipodoc + "'").Valor(0) == 4;
if (PTtestaDoc == true)
{
MessageBox.Show(PSO.Utils.FStr(this.DocumentoCompra.CBLNumDiario));
this.DocumentoCompra.CamposUtil["CDU_NDocInterno"].Valor = PSO.Utils.FStr(this.DocumentoCompra.CBLNumDiario);
}
}
catch (System.Exception ex)
{
PSO.Dialogos.MostraErro(ex.Message, StdPlatBS100.StdBSTipos.IconId.PRI_Exclama, "Ups! …..");
}
base.DepoisDeIntegrar(e);
}
}
}
Marcado como spam |
Comentários Olá,
Não estou a perceber. Tenho de o gravar manualmente como?
Tambem já fiz o mesmo teste no evento antesdegravar e tive o mesmo problema. @antonioraposo Se a sequencia dos eventos o depois de integrar ocorrer no depois de gravar é necessário fazer um atualizavaloratriburo para esse cdu. Seria possível indicar-me onde posso encontrar um exemplo de como aplicar o atualizavaloratriburo?
Tenho tido o mesmo problema noutros eventos e não era normal acontecer, neste caso estou a utilizar o DepoisDeIntegrar porque no antesdegravar dava o mesmo problema. @antnioraposo BSO.Compras.Documentos.AtualizaValorAtributo(). Neste evento existe AtualizaValorAtributo()?
No antesdegravar ou depoisdegravar consigo mas no depois de integrar dá erro. |
2 respostas
| Resposta privada Viva, Abraço Marcado como spam | |
| Resposta privada Posso estar enganado mas se o evento é depois de integrar quer dizer que o documento em si foi salvo anteriormente, ou seja, estas a preencher o CDU mas depois tens de o gravar manualmente. Marcado como spam |