Esempio n. 1
0
 public void addMovimento(OFX_Movimento movimento)
 {
     if (this.movimento == null)
     {
         this.movimento = new ArrayList();
     }
     this.movimento.Add(movimento);
 }
Esempio n. 2
0
        //Construtor da classe
        public frmConcilia(object ListaTitulos, OFX_Movimento pMovimento, ref Conciliado devolverConciliado)
        {
            InitializeComponent();
            this.listaTitulos = ListaTitulos;
            this.movimento = pMovimento;

            //Monta o grid e as labels
            dtgConcilia.AutoGenerateColumns = false;
            dtgConcilia.DataSource = ListaTitulos;
            dtgConcilia.Columns[5].DefaultCellStyle.Format = "C";
            lblMovimento.Text = Convert.ToString(pMovimento.Data.Day + "/" + pMovimento.Data.Month + "/" + pMovimento.Data.Year);
            lblDescricao.Text = Convert.ToString(pMovimento.Descricao);
            lblValor.Text = Convert.ToString(pMovimento.Valor);

            //Atribui o ponteiro a uma variavel local para ser alterada
            dvConciliado = devolverConciliado;
        }
Esempio n. 3
0
            // Retorna objeto Extrato com os dados do OFX.
            public static OFX_Extrato getExtrato(String ofxOrigem)
            {
                Boolean temTransacao              = false;
                Boolean temCabecalho              = false;
                Boolean temDadosConta             = false;
                Boolean temDadosPrincipaisExtrato = false;

                // Transformar em arquivo XML
                exportToXML(ofxOrigem, ofxOrigem + ".xml");

                // Variáveis úteis para o Parse
                String        elementoSendoLido = "";
                OFX_Movimento transacaoAtual    = null;

                // Variávies utilizadas para a leitura do XML
                OFX_HeaderExtrato cabecalho = new OFX_HeaderExtrato();
                OFX_Conta         conta     = new OFX_Conta();

                OFX_Extrato extrato = new OFX_Extrato(cabecalho, conta, "");

                // Lendo o XML
                XmlTextReader meuXml = new XmlTextReader(ofxOrigem + ".xml");

                try
                {
                    while (meuXml.Read())
                    {
                        if (meuXml.NodeType == XmlNodeType.EndElement)
                        {
                            switch (meuXml.Name)
                            {
                            case "STMTTRN":
                                if (transacaoAtual != null)
                                {
                                    extrato.addMovimento(transacaoAtual);
                                    transacaoAtual = null;
                                    temTransacao   = true;
                                }
                                break;
                            }
                        }
                        if (meuXml.NodeType == XmlNodeType.Element)
                        {
                            elementoSendoLido = meuXml.Name;

                            switch (elementoSendoLido)
                            {
                            case "STMTTRN":
                                transacaoAtual = new OFX_Movimento();
                                break;
                            }
                        }
                        if (meuXml.NodeType == XmlNodeType.Text)
                        {
                            switch (elementoSendoLido)
                            {
                            case "DTSERVER":
                                //cabecalho.DataServidor = convertOfxDateToDateTime(meuXml.Value);
                                temCabecalho = true;
                                break;

                            case "LANGUAGE":
                                cabecalho.Idioma = meuXml.Value;
                                temCabecalho     = true;
                                break;

                            case "ORG":
                                cabecalho.NomeBanco = meuXml.Value;
                                temCabecalho        = true;
                                break;

                            case "DTSTART":
                                extrato.DataInicio        = convertOfxDateToDateTime(meuXml.Value);
                                temDadosPrincipaisExtrato = true;
                                break;

                            case "DTEND":
                                extrato.DataFinal         = convertOfxDateToDateTime(meuXml.Value);
                                temDadosPrincipaisExtrato = true;
                                break;

                            case "BANKID":
                                conta.Banco   = new OFX_Banco(Convert.ToInt32(meuXml.Value), "");
                                temDadosConta = true;
                                break;

                            case "BRANCHID":
                                conta.Agencia = meuXml.Value;
                                temDadosConta = true;
                                break;

                            case "ACCTID":
                                conta.nConta  = meuXml.Value;
                                temDadosConta = true;
                                break;

                            case "ACCTTYPE":
                                conta.Tipo    = meuXml.Value;
                                temDadosConta = true;
                                break;

                            case "TRNTYPE":
                                transacaoAtual.Tipo = meuXml.Value;
                                break;

                            case "DTPOSTED":
                                transacaoAtual.Data = convertOfxDateToDateTime(meuXml.Value);
                                break;

                            case "TRNAMT":
                                transacaoAtual.Valor = Convert.ToDouble(meuXml.Value.Replace('.', ','));
                                break;

                            case "FITID":
                                transacaoAtual.Id = meuXml.Value;
                                break;

                            case "CHECKNUM":
                                transacaoAtual.Checksum = Convert.ToInt64(meuXml.Value);
                                break;

                            case "MEMO":
                                transacaoAtual.Descricao = meuXml.Value;
                                break;
                            }
                        }
                    }
                }
                catch (XmlException ex)
                {
                    throw new OFXErros(Convert.ToString(ex.Message + "OFX Inválido!"));
                }
                finally
                {
                    meuXml.Close();
                }

                if ((temCabecalho == false) || (temDadosConta == false) || (temDadosPrincipaisExtrato == false))
                {
                    throw new OFXErros("OFX Inválido!");
                }

                return(extrato);
            }
Esempio n. 4
0
 public void addMovimento(OFX_Movimento movimento)
 {
     if (this.movimento == null)
     {
         this.movimento = new ArrayList();
     }
     this.movimento.Add(movimento);
 }
Esempio n. 5
0
            // Retorna objeto Extrato com os dados do OFX.
            public static OFX_Extrato getExtrato(String ofxOrigem)
            {
                Boolean temTransacao = false;
                Boolean temCabecalho = false;
                Boolean temDadosConta = false;
                Boolean temDadosPrincipaisExtrato = false;

                // Transformar em arquivo XML
                exportToXML(ofxOrigem, ofxOrigem + ".xml");

                // Variáveis úteis para o Parse
                String elementoSendoLido = "";
                OFX_Movimento transacaoAtual = null;

                // Variávies utilizadas para a leitura do XML
                OFX_HeaderExtrato cabecalho = new OFX_HeaderExtrato();
                OFX_Conta conta = new OFX_Conta();

                OFX_Extrato extrato = new OFX_Extrato(cabecalho, conta, "");

                // Lendo o XML
                XmlTextReader meuXml = new XmlTextReader(ofxOrigem + ".xml");
                try
                {
                    while (meuXml.Read())
                    {
                        if (meuXml.NodeType == XmlNodeType.EndElement)
                        {
                            switch (meuXml.Name)
                            {
                                case "STMTTRN":
                                    if (transacaoAtual != null)
                                    {
                                        extrato.addMovimento(transacaoAtual);
                                        transacaoAtual = null;
                                        temTransacao = true;
                                    }
                                    break;
                            }
                        }
                        if (meuXml.NodeType == XmlNodeType.Element)
                        {
                            elementoSendoLido = meuXml.Name;

                            switch (elementoSendoLido)
                            {
                                case "STMTTRN":
                                    transacaoAtual = new OFX_Movimento();
                                    break;
                            }
                        }
                        if (meuXml.NodeType == XmlNodeType.Text)
                        {
                            switch (elementoSendoLido)
                            {
                                case "DTSERVER":
                                    //cabecalho.DataServidor = convertOfxDateToDateTime(meuXml.Value);
                                    temCabecalho = true;
                                    break;
                                case "LANGUAGE":
                                    cabecalho.Idioma = meuXml.Value;
                                    temCabecalho = true;
                                    break;
                                case "ORG":
                                    cabecalho.NomeBanco = meuXml.Value;
                                    temCabecalho = true;
                                    break;
                                case "DTSTART":
                                    extrato.DataInicio = convertOfxDateToDateTime(meuXml.Value);
                                    temDadosPrincipaisExtrato = true;
                                    break;
                                case "DTEND":
                                    extrato.DataFinal = convertOfxDateToDateTime(meuXml.Value);
                                    temDadosPrincipaisExtrato = true;
                                    break;
                                case "BANKID":
                                    conta.Banco = new OFX_Banco(Convert.ToInt32(meuXml.Value), "");
                                    temDadosConta = true;
                                    break;
                                case "BRANCHID":
                                    conta.Agencia = meuXml.Value;
                                    temDadosConta = true;
                                    break;
                                case "ACCTID":
                                    conta.nConta = meuXml.Value;
                                    temDadosConta = true;
                                    break;
                                case "ACCTTYPE":
                                    conta.Tipo = meuXml.Value;
                                    temDadosConta = true;
                                    break;
                                case "TRNTYPE":
                                    transacaoAtual.Tipo = meuXml.Value;
                                    break;
                                case "DTPOSTED":
                                    transacaoAtual.Data = convertOfxDateToDateTime(meuXml.Value);
                                    break;
                                case "TRNAMT":
                                    transacaoAtual.Valor = Convert.ToDouble(meuXml.Value.Replace('.', ','));
                                    break;
                                case "FITID":
                                    transacaoAtual.Id = meuXml.Value;
                                    break;
                                case "CHECKNUM":
                                    transacaoAtual.Checksum = Convert.ToInt64(meuXml.Value);
                                    break;
                                case "MEMO":
                                    transacaoAtual.Descricao = meuXml.Value;
                                    break;
                            }
                        }
                    }
                }
                catch (XmlException ex)
                {
                    throw new OFXErros(Convert.ToString(ex.Message + "OFX Inválido!"));
                }
                finally
                {
                    meuXml.Close();
                }

                if ((temCabecalho == false) || (temDadosConta == false) || (temDadosPrincipaisExtrato == false))
                {
                    throw new OFXErros("OFX Inválido!");
                }

                return extrato;
            }