weverton dias 2 Report post Posted July 16 Boa Tarde Pessoal tudo bem? Espero que sim! Estou tentando criar a formula visual via código fonte para carregar os dados de pagamento do fornecedor, porém está retornando o erro: Ocorreu um erro ao efetuar a leitura da visão: Fórmula Visual: 'CRIAR COLUNA DADOS PAGAMENTO VISAO FLAN'. O índice estava fora dos limites da matriz. Preciso carregar os dados de pagamento Defalt: Código Banco , Tipo de Pagamento (Doc, TED, PIX e etc)...Já fiz a formula da forma tradiciona, porém esta travando muito a tela carregamento dos lançamentos e os usuários estão irritados, porém necessitam da informação para alguns processo.... Alguém saberia como resolver? //------------------------------------------------------------------------------ // <auto-generated> // O código foi gerado por uma ferramenta. // Versão de Tempo de Execução:4.0.30319.42000 // // As alterações ao arquivo poderão causar comportamento incorreto e serão perdidas se // o código for gerado novamente. // </auto-generated> //------------------------------------------------------------------------------ using RM.Con.SourceCode.Intf; using RM.Con.SourceCode.Server; using RM.Fin.Lan; using RM.Lib; using RM.Lib.Data; using RM.Lib.Server; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; namespace RM.ClassesCustomizadas { public class CodigoFonteCustomizado : SrcBase, ISrcDataServer, ISrcProcess, ISrcSubscriber, ISrcCommon { public void CustomDataServer(RM.Con.SourceCode.Intf.SrcDataServerParams dataServerParams) { // FinLAN FinLAN = ((FinLAN)(dataServerParams.DataSet)); string strParametro ="0"; foreach(DataRow lancamento in dataServerParams.DataSet.Tables["FLAN"].Rows) { strParametro += " OR IDLAN=" + lancamento["IDLAN"].ToString(); } RMSConsSQLExecServer query = new RMSConsSQLExecServer(); string strSentenca=""; strSentenca += "SELECT A.IDLAN,B.NUMEROBANCO FROM FLAN A "; strSentenca += "INNER JOIN FDADOSPGTO B ON B.CODCOLIGADA = A.CODCOLIGADA AND B.CODCFO = A.CODCFO AND B.IDPGTO = A.IDPGTO "; strSentenca += "WHERE A.IDLAN ="+strParametro; DataTable dtRetorno = query.ExecSQL(strSentenca,null); foreach(DataRow lancamento in dataServerParams.DataSet.Tables["FLAN"].Rows) { DataRow[] rowRetorno = dtRetorno.Select("IDLAN = " + lancamento["IDLAN"].ToString()); lancamento["NUMEROBANCO"]=rowRetorno[0]["NUMEROBANCO"].ToString(); } } public void CustomProcess(RM.Con.SourceCode.Intf.SrcProcessParams processParams) { } public void CustomSubscriber(RM.Con.SourceCode.Intf.SrcSubscriberParms subscriberParams) { } public void CustomCommon(RM.Con.SourceCode.Intf.SrcCommonParams commonParams) { } } } Quote Share this post Link to post Share on other sites