Dúvida com Visual Basic

4 respostas
rildomar

Olá Senhores, Boa tarde,

Primeiramente gostaria de pedir desculpas, por estar postando sobre outra linguagem, mas eh um problema que estou tentando resolver a um tempo.

Estou usando o Visual Studio 2010 pra resolver um problema de aplicação.

eu tenho o seguinte código:
private void btFLuxoCPWS_Click(object sender, EventArgs e)
        {
            validaCredenciaisClientesEstabelecimentos();
            validaNecessidadeDeCliente();

            MessageBox.Show("Aguarde enquanto a consulta é efetuada, isto pode demorar algum tempo");

            TextBox.Clear();
            try
            {

                string p = "|";
                string dataIni =  "01072013";
                string dataFim =  "30072013";
                string fileName = "RR-0Feixe072013_feixe.xml";

                string user = "admin";
                string userNew = "admin2";
                string senha = "123";
                string senhaNew = "123";

                dataGridView1.ColumnCount = 5;
                dataGridView1.ColumnHeadersVisible = true;
                dataGridView1.Rows.Clear();

                localhost.Cliente cli = new localhost.Cliente();
                //var itemCbox = cboxClientes.SelectedItem;
                string itemCbox2 = "NomeFantasia"; //Alteracao aq
                Object obj = itemCbox2;
                cli = (localhost.Cliente)obj;

                string tmp = dateInicial.Value.ToShortDateString();
                tmp += " "+hourInicial.Value.ToLongTimeString();
                DateTime inicial;
                DateTime.TryParse(tmp, out inicial);

                tmp = dateFinal.Value.ToShortDateString();
                tmp += " "+hourFinal.Value.ToLongTimeString();
                DateTime final;
                DateTime.TryParse(tmp,out final);

                var registros = ws.Consulta(userNew, senhaNew, cli, inicial, final );

                string url = Convert.ToString(registros);

                XmlDocument doc = new XmlDocument();
                DataSet dats = new DataSet();
                doc.AppendChild(doc.ImportNode(,true));
                XmlNodeReader reader = new XmlNodeReader(doc);

                dats.ReadXml(reader);
                dats.WriteXml(fileName);
                
                foreach (var item in registros)
                {                    

                    dataGridView1.Rows.Add(item.DataEHora.ToString(),item.Estabelecimento.NomeFantasia,item.Ambiente.Nome+": "+item.Ambiente.ID,item.Entrada,item.Saída);

                }
                 
            }
            catch (Exception eee)
            {
                validaCredenciaisClientesEstabelecimentos();
                TextBox.Text += eee.Message;
            }
        }

Estou adaptando ele pra uma rotina certo? com valores fixos, porem eu estou tentando grava-los em um XML e não estou conseguindo. alguem poderia me dar uma luz?

eu ja tentei usar o ws.Consulta(...) dentro do doc.AppendChild(doc.ImportNode(ws.Consulta(...),true)); e ele apresenta um erro(apenas sublinhando, falando que o ImportNode não aceita), ja tentei usar também uma conversão do ws.Consulta em uma string e passando apenas o valor.. doc.AppendChild(doc.ImportNode(ws.Consulta.toString,true));, também o ImportNode não aceita..

Alguém poderia me dar uma luz ? se nao for pedir d+

Obs: Sem a adaptação para valores fixos, pegando do Form[Design] ele funciona. como falei, estou tentando adaptar pra uma rotina com valores fixos.

Grato e fico no aguardo.

Skype: rildomar.lucena7
Gmail: [email removido]

4 Respostas

E

Desculpe. Isso não é C#?

Rafael_SF

ws.Consulta(…) não retorna uma lista?
se sim em um for o append não funciona?

rildomar

Se existir uma forma mais simples de se fazer esse XML, eu agradeço.

#urgente.

rildomar

Sim.. c#..

nunca mexi com isso, porem como falaram e eu percebi que lembra muito o java eu peguei isso pra resolver..

Esse código eu estou dando manutenção.. Trabalho com BI, e com essa rotina que estou querendo fazer, ele me retorna um xml com tudo o que preciso pra utilizar no BI.

porém tenho essa bronca..

Posso postar aqui novamente o novo código com tudo comentado e com uma melhor explicação..

Código comentado:

private void btFLuxoCPWS_Click(object sender, EventArgs e)
        {
            validaCredenciaisClientesEstabelecimentos();           //isso pode ignorar..
            validaNecessidadeDeCliente();                          //isso pode ignorar..

            MessageBox.Show("Aguarde enquanto a consulta é efetuada, isto pode demorar algum tempo"); //isso pode ignorar..

            TextBox.Clear();                                       //isso pode ignorar..
            try
            {

                string p = "|";
                string dataIni =  "01072013";
                string dataFim =  "30072013";
                string fileName = "RR-0Feixe072013_feixe.xml";

                string user = "08961229000102";
                string userNew = "srecife.admin";
                string senha = "R6A9Q8B1";
                string senhaNew = "sr3c1f3.a";

                dataGridView1.ColumnCount = 5;                      //isso pode ignorar..
                dataGridView1.ColumnHeadersVisible = true;          //isso pode ignorar..
                dataGridView1.Rows.Clear();                         //isso pode ignorar..

                localhost.Cliente cli = new localhost.Cliente(); 
                //var itemCbox = cboxClientes.SelectedItem;         //isso pode ignorar..
                string itemCbox2 = "NomeFantasia";                  //ao invés de selecionar um cliente do combobox, eu to inserindo manualmente mesmo..
                Object obj = itemCbox2;                             // Faco as converções
                cli = (localhost.Cliente)obj;                       // Faco as converções

                string tmp = dateInicial.Value.ToShortDateString(); //isso ainda ta pegando automático.. por enquanto ta sendo ignorado.
                tmp += " "+hourInicial.Value.ToLongTimeString();    //isso ainda ta pegando automático.. por enquanto ta sendo ignorado.
                DateTime inicial;                                   //isso ainda ta pegando automático.. por enquanto ta sendo ignorado.
                DateTime.TryParse(tmp, out inicial);                //isso ainda ta pegando automático.. por enquanto ta sendo ignorado.

                tmp = dateFinal.Value.ToShortDateString();          //isso ainda ta pegando automático.. por enquanto ta sendo ignorado.
                tmp += " "+hourFinal.Value.ToLongTimeString();      //isso ainda ta pegando automático.. por enquanto ta sendo ignorado.
                DateTime final;                                     //isso ainda ta pegando automático.. por enquanto ta sendo ignorado.
                DateTime.TryParse(tmp,out final);                   //isso ainda ta pegando automático.. por enquanto ta sendo ignorado.

                var registros = ws.Consulta(userNew, senhaNew, cli, inicial, final ); //pra eu poder ter o acesso, tenho que passar o login, senha, o cliente, e datas.

                string url = Convert.ToString(registros);           // Fazendo uma simples conversão para testes.. pode ignorar tbm..

                XmlDocument doc = new XmlDocument();                // aqui começa a brincadeira e o inicio dos problemas. Não estou sabendo escrever no XML
                DataSet dats = new DataSet();
                doc.AppendChild(doc.ImportNode(/*Aqui tenho que colocar algo.. mais nao estou sabendo.. */,true)); 
                XmlNodeReader reader = new XmlNodeReader(doc);

                dats.ReadXml(reader);
                dats.WriteXml(fileName);
                
                foreach (var item in registros)                    // isso aqui pra baixo pode ignorar..  que nao vai ser utilizado.. depois comento o código.
                {                    

                    dataGridView1.Rows.Add(item.DataEHora.ToString(),item.Estabelecimento.NomeFantasia,item.Ambiente.Nome+": "+item.Ambiente.ID,item.Entrada,item.Saída);

                }
                 
            }
            catch (Exception eee)
            {
                validaCredenciaisClientesEstabelecimentos();
                TextBox.Text += eee.Message;
            }
        }
Criado 1 de agosto de 2013
Ultima resposta 1 de ago. de 2013
Respostas 4
Participantes 3