예제 #1
0
        /// <summary>
        /// Carrega o objeto do ITOP para criar o arquivo dat posteriormente
        /// </summary>
        private void LoadITOPObject()
        {
            try
            {
                //Lista de clientes
                var ListaCliente = new List <int>();

                string lClientes = string.Empty;

                //tratando os clientes
                foreach (var posicao in ListDetailITOP)
                {
                    if (!ListaCliente.Contains(posicao.CodigoClienteGradual))
                    {
                        ListaCliente.Add(posicao.CodigoClienteGradual);
                        lClientes += string.Concat(posicao.CodigoClienteGradual, ",");
                    }
                }

                lClientes = lClientes.Remove(lClientes.LastIndexOf(','), 1);

                var lDb = new TransferenciasRiscoDbLib();

                this.ListClienteData = lDb.ConsultarDadosCliente(lClientes);

                int lNumeroSequencial = int.Parse(txtSequencialITOP.Text);

                bool lEhOrigem = this.rdoITOPOrigem.Checked;

                //Header
                ITOPFile.ITOPHeader.DataMovimento    = DateTime.Now.ToString();
                ITOPFile.ITOPHeader.EhOrigem         = lEhOrigem;
                ITOPFile.ITOPHeader.NumeroSequencial = lNumeroSequencial.ToString();

                //Detail
                ITOPFile.ITOPDetail.Clear();
                foreach (var lExcel in ListDetailITOP)
                {
                    var lDetail = new ITOPDetailInfo();

                    var lClienteData = this.ListClienteData.Find(cliente =>
                                                                 { return(cliente.CodigoClienteGradual == lExcel.CodigoClienteGradual); });

                    if (lClienteData == null)
                    {
                        continue;
                    }

                    lDetail.CodigoInvestidor      = lEhOrigem ? string.Concat(lClienteData.CodigoClienteGradual, lClienteData.DigitoClienteGradual) : string.Concat(lClienteData.CodigoClientePlural, lClienteData.DigitoClientePlural);
                    lDetail.CodigoNegociacao      = lExcel.Ativo;
                    lDetail.NaturezaPosicao       = (lExcel.Quantidade <= 0) ? "L": "T";
                    lDetail.NaturezaTransferencia = (lEhOrigem)? "O" : "D";
                    lDetail.QuantidadeCoberta     = (lExcel.Quantidade > 0) ? Math.Abs(lExcel.Quantidade).ToString() : "0";
                    lDetail.QuantidadeDescoberta  = (lExcel.Quantidade < 0) ? Math.Abs(lExcel.Quantidade).ToString() : "0";
                    lDetail.QuantidadePop         = "0";
                    //lDetail.CodigoClienteDVDestino = string.Concat(lClienteData.CodigoClientePlural, lClienteData.DigitoClientePlural);
                    //lDetail.CodigoCarteiraOrigem = lExcel.CodigoCarteira.ToString();
                    //lDetail.CodigoCarteiraDestino = lExcel.CodigoCarteira.ToString();

                    ITOPFile.ITOPDetail.Add(lDetail);
                }

                //Trailer
                ITOPFile.ITOPTrailer.EhOrigem             = lEhOrigem;
                ITOPFile.ITOPTrailer.TotalRegistrosGerado = (ITOPFile.ITOPDetail.Count + 2).ToString();
                ITOPFile.ITOPTrailer.NumeroSequencial     = lNumeroSequencial.ToString();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro: erro encontrado no LoadITRAObject-->> " + ex.StackTrace);
            }
        }
예제 #2
0
        /// <summary>
        /// Carrega o objeto do ITRE para criar o arquivo dat posteriormente
        /// </summary>
        private void LoadITREObject()
        {
            toolStripProgressBar1.Value = 50;
            statusStrip1.Refresh();

            try
            {
                //Lista de clientes
                var ListaCliente = new List <int>();

                string lClientes = string.Empty;

                //tratando os clientes
                foreach (var posicao in ListDetailITRE)
                {
                    if (!ListaCliente.Contains(posicao.CodigoClienteGradual))
                    {
                        ListaCliente.Add(posicao.CodigoClienteGradual);
                        lClientes += string.Concat(posicao.CodigoClienteGradual, ",");
                    }
                }

                lClientes = lClientes.Remove(lClientes.LastIndexOf(','), 1);

                var lDb = new TransferenciasRiscoDbLib();

                this.ListClienteData = lDb.ConsultarDadosCliente(lClientes);

                int lNumeroSequencial = int.Parse(txtSequencialITRE.Text);

                bool lEhOrigem = this.rdoITOPOrigem.Checked;

                //Header
                ITREFile.ITREHeader.DataMovimento          = DateTime.Now.ToString();
                ITREFile.ITREHeader.NumeroMovimentoArquivo = lNumeroSequencial.ToString();

                //Detail
                ITREFile.ITREDetail.Clear();
                foreach (var lExcel in ListDetailITRE)
                {
                    var lDetail = new ITREDetailInfo();

                    var lClienteData = this.ListClienteData.Find(cliente =>
                                                                 { return(cliente.CodigoClienteGradual == lExcel.CodigoClienteGradual); });

                    if (lClienteData == null)
                    {
                        continue;
                    }

                    lDetail.NumeroPedidoAtualizacao   = lExcel.NumeroProcesso;
                    lDetail.CodigoClienteDVOrigem     = string.Concat(lClienteData.CodigoClienteGradual, lClienteData.DigitoClienteGradual);
                    lDetail.CodigoCarteiraOrigem      = lExcel.CodigoCarteira.ToString();
                    lDetail.CodigoInvestidorDestinoDV = string.Concat(lClienteData.CodigoClientePlural, lClienteData.DigitoClientePlural);
                    lDetail.CodigoCarteiraDestinoDV   = lExcel.CodigoCarteira.ToString();
                    lDetail.CodigoISIN       = lExcel.CodigoISIN;
                    lDetail.DistribuicaoISIN = lExcel.NumeroDitribuicao.ToString();
                    lDetail.Quantidade       = Math.Abs(lExcel.Quantidade).ToString();

                    ITREFile.ITREDetail.Add(lDetail);
                }

                //Trailer
                ITREFile.ITRETrailer.TotalRegistros         = (ITREFile.ITREDetail.Count + 2).ToString();
                ITREFile.ITRETrailer.NumeroMovimentoArquivo = lNumeroSequencial.ToString();

                toolStripProgressBar1.Value = 70;
                statusStrip1.Refresh();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro: erro encontrado no LoadITRAObject-->> " + ex.StackTrace);
            }
        }
예제 #3
0
        /// <summary>
        /// Carrega o objeto do ITRA para futuro uso dos
        /// </summary>
        private void LoadITRAObject()
        {
            try
            {
                toolStripProgressBar1.Value = 70;
                statusStrip1.Refresh();

                //Lista de clientes
                var ListaCliente = new List <int>();

                string lClientes = string.Empty;

                //tratando os clientes
                foreach (var posicao in ListDetailITRA)
                {
                    if (!ListaCliente.Contains(posicao.CodigoClienteGradual))
                    {
                        ListaCliente.Add(posicao.CodigoClienteGradual);
                        lClientes += string.Concat(posicao.CodigoClienteGradual, ",");
                    }
                }

                lClientes = lClientes.Remove(lClientes.LastIndexOf(','), 1);

                var lDb = new TransferenciasRiscoDbLib();

                this.ListClienteData = lDb.ConsultarDadosCliente(lClientes);

                int lNumeroSequencial = int.Parse(txtSequencialITRA.Text);
                //Header
                ITRAFile.ITRAHeader.DataMovimento = DateTime.Now.ToString();

                //Detail
                ITRAFile.ITRADetail.Clear();
                foreach (var lExcel in ListDetailITRA)
                {
                    var lDetail = new ITRADetailInfo();

                    var lClienteData = this.ListClienteData.Find(cliente =>
                                                                 { return(cliente.CodigoClienteGradual == lExcel.CodigoClienteGradual); });

                    if (lClienteData == null)
                    {
                        continue;
                    }

                    lNumeroSequencial++;

                    lDetail.NumeroSequencial = lNumeroSequencial.ToString();

                    lDetail.CodigoClienteDVOrigem  = string.Concat(lClienteData.CodigoClienteGradual, lClienteData.DigitoClienteGradual);
                    lDetail.CodigoClienteDVDestino = string.Concat(lClienteData.CodigoClientePlural, lClienteData.DigitoClientePlural);
                    lDetail.CodigoCarteiraOrigem   = lExcel.CodigoCarteira.ToString();
                    lDetail.CodigoCarteiraDestino  = lExcel.CodigoCarteira.ToString();

                    var lTrade = lDb.ConsultarCodigoISIN(lExcel.Ativo, lExcel.CodigoClienteGradual);

                    lDetail.CodigoISIN             = lTrade.CodigoISIN;
                    lDetail.DistribuicaoCodigoISIN = lTrade.CodigoDistribuicao;

                    ITRAFile.ITRADetail.Add(lDetail);
                }

                //Trailer
                ITRAFile.ITRATrailer.TotalRegistros = (ITRAFile.ITRADetail.Count + 2).ToString();

                toolStripProgressBar1.Value = 90;
                statusStrip1.Refresh();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro: erro encontrado no LoadITRAObject-->> " + ex.StackTrace);
            }
        }