| ♥ 0 | Estou a começar a fazer a migração da v9 para a v10, como tal, tenho que configurar novas funções de extensibilidade. V9- VBA
strSql = vbNullString
strSql = strSql & "SELECT * FROM Artigo "
strSql = strSql & "WHERE Artigo = '" & Me.DocumentoVenda.Linhas(NumLinha).Artigo & "'"
Set objLista = Aplicacao.BSO.Consulta(strSql)
DblArtigoEncargos = Conversion.CDbl(PlataformaPRIMAVERA.Utils.FDbl#(objLista("CDU_encargos")))
Me.DocumentoVenda.Linhas(NumLinha).CamposUtil.Item("CDU_encargos2").Valor = 1 * DblArtigoEncargos
DblEncargos2 = Conversion.CDbl(Me.DocumentoVenda.Linhas(NumLinha).CamposUtil.Item("CDU_encargos2").Valor)
V10-C#
string query = string.Format("select * from artigo, LinhasDoc where artigo.artigo=LinhasDoc.artigo");
StdBE100.StdBELista ArtigoList;
ArtigoList=BSO.Consulta(query);
DblArtigoEncargos = PSO.Utils.FInt(ArtigoList("CDU_encargos"));
Desde já, agradeço o vosso auxilio na explicação deste detalhe. Já tentei verificar algumas situações mas sem sucesso.
Marcado como spam |
Comentários @lucndriodelurdesftquinhentos Não estou a entender o que queres fazer com esse codigo. queres validar linha onde? em que contexto.... O select também não está bem.... Se mais concreto para poder ajudar. Porque não usas a API dos artigos ? @sereno O que pretendo fazer é que no evento do Primavera ValidaLinha eu consiga ir buscar campos de utilizador que estão na tabela dos artigos e assim conseguir fazer cálculos entre o conteúdo por defeito do evento ValidaLinha e os campos de utilizador que estão na tabela artigo. |
2 respostas
| Resposta privada Obrigado pelas recomendações. Marcado como spam | |
| Resposta privada A melhor de fazer isso é evitar o uso do SQL, para além "SELECT* FROM" é de evitar por motivos de performance. Recomendo algo tipo isto para fazer o que queres. public class UiEditorVendas : EditorVendas
{
public override void ValidaLinha(int NumLinha, ExtensibilityEventArgs e)
{
var campos = this.BSO.Base.Artigos.DaValorAtributos(this.DocumentoVenda.Linhas.GetEdita(NumLinha).Artigo, "CDU_Campovar1");
}
}
Marcado como spam |