c# access & sql...
 
Bildirimler
Hepsini Temizle

c# access & sql veri tabanından sırayla veri çekmek.  

  RSS
Okan Agora
(@OkanAgora)
Üye

Arkadaşlar merhaba.

Access veri tabanımda 10 adet kayıt var ve ben bu kayıtları  c# formumda yer alan iki adet textboxa sırayla çekmek istiyorum. Şöyle ki çektiği her kaydı yazıcıya gönderecek ardından diğer kaydı alacak. Yazdırmam işlemim de herhangi bir sorun yok ancak kayıt çekme ile ilgili oluşturduğum döngüm çalışmıyor. Kodlarım aşağıdadır. Yardımınız için teşekkürler. 

 

 using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.IO;

using System.Diagnostics;

using System.Data.OleDb;

namespace WindowsFormsApplication1

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

            listele();

        }

        private void Form1_Load(object sender, EventArgs e)

        {

        }

        OleDbConnection okan = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\barkod.accdb");

        OleDbCommand oku = new OleDbCommand();

        void baglan()

        {

            try

            {

                if (okan.State == ConnectionState.Closed)

                    okan.Open();

            }

            catch (Exception hata)

            {

                MessageBox.Show(hata.Message);

            }

        }

        void listele()

        {

            baglan();

            DataTable DT = new DataTable();

            OleDbDataAdapter list = new OleDbDataAdapter("select * from Tablo1", okan);

            list.Fill(DT);

            dataGridView1.DataSource = DT;

        }

        private void button1_Click(object sender, EventArgs e)

        {

            baglan();

            OleDbCommand getir = new OleDbCommand("Select * from Tablo1", okan);

            OleDbDataReader oku = getir.ExecuteReader();

            while (oku.Read())

            {

                textBox1.Text += oku["IMEI"] + "";                    // textbox1.text= oku[0].tostring Bu şekilde de çalışmamaktadır.

                textBox2.Text += oku["SERIAL"] + "";               // textbox2.text= oku[2].tostring Bu şekilde de çalışmamaktadır.

            }

                    StringBuilder sBuilder = new StringBuilder();

                    for (int i = 0; i <= oku.FieldCount; i++)

                    {

                        sBuilder.AppendLine("^XA");

                        sBuilder.AppendLine("^MCY");

                        sBuilder.AppendLine("^FWN^CFD,24^PW831^LH0,0");

                        sBuilder.AppendLine("^CI0^PR2^MNY^MTT^MMT^MD0^PON^PMN^LRN");

                        sBuilder.AppendLine("^^FO73,40^GFA,00528,00528,00016,00,00,00,00,00,00,01FC0003FFFC0001C03FF80FC00FC0,07FF0003FFFC0003C03FF83FF03FF0,0FFF8003FFFC0007C03FF87FF87FF8,1FFFC003FFFC000FC07FF8F87CF87C,3F07C003C000003FC07800F03CF03C,3C03E003C000007FC07800F03CF03C,7C018003C000007BC07800F03CF03C,78000003C0000073C07FC078787878,78000003FFF80043C07FF03FF03FF0,78000003FFF80003C0FFF81FE01FE0,78000003FFF80003C0FFF83FF03FF0,78000003FFF80003C0F07C78787878,78018003C0000003C0003CF03CF03C,7C03E003C0000003C0003CF03CF03C,3C03E003C0000003C0F03CF03CF03C,3F0FC003C0000003C0F87CF03CF03C,1FFFC003FFFC0003C07FF8F87CF87C,0FFF8003FFFC0003C07FF87FF87FF8,07FF0003FFFC0003C03FF03FF03FF0,01FC0003FFFC0003C00FC00FC00FC0,00,00,00,00,00,00,00,");

                        sBuilder.AppendLine("^FO236,39^GFA,00148,00148,00004,00,00,00,00,00,00,00,007C,00FE,00FE,01FF,01EF,01EF,03EF80,03C780,03C780,0783C0,0783C0,0F83E0,0F01E0,0F01E0,1FFFF0,1FFFF0,3FFFF8,3FFFF8,3C0078,7C007C,78003C,78003C,F0001E,00,00,00,00,00,00,00,");

                        sBuilder.AppendLine("^FO288,38^GFA,00148,00148,00004,00,00,00,00,00,00,00,3FFF,3FFFC0,3FFFE0,3FFFF0,3C01F0,3C00F0,3C00F0,3C00F0,3C01E0,3FFFE0,3FFFC0,3FFFE0,3FFFF0,3C01F0,3C0078,3C0078,3C0078,3C0078,3C00F8,3FFFF0,3FFFF0,3FFFE0,3FFF80,00,00,00,00,00,00,00,");

                        sBuilder.AppendLine("^FO45,140^GFA,28,0^CI0^FR^FD" + label2.Text + "^FS");

                        sBuilder.AppendLine("^FO45,95^A0,30,0^CI0^FR^FD" + label1.Text + "^FS");

                        sBuilder.AppendLine("^FO45,162^GFA,28,0^CI0^FR^FD" + label3.Text + "^FS");

                        sBuilder.AppendLine("^FO45,425^GFA,28,0^CI0^FR^FD" + label4.Text + "^FS");

                        sBuilder.AppendLine("^FO45,260^A0,22,0^CI0^FR^FDIMEI: " + textBox1.Text + "^FS");

                        sBuilder.AppendLine("^FO45,200^BCN,50,N,N,N^FR^FD>;" + textBox1.Text + "^FS");

                        sBuilder.AppendLine("^FO45,360^A0,22,0^CI0^FR^FDS/N: " + textBox2.Text + "^FS");

                        sBuilder.AppendLine("^FO45,300^BCN,50,N,N,N^FR^FD>;" + textBox2.Text + "^FS");

                        sBuilder.AppendLine("^XZ");

                        sBuilder.AppendLine("^XA");

                        sBuilder.AppendLine("^PQ1,0,1,Y");

                        sBuilder.AppendLine("^XZ");

                        sBuilder.AppendLine("^XA");

                        sBuilder.AppendLine("^XZ");

                    }

                    AddToLog(sBuilder.ToString(), "c:\\barkod\\etiket\\");

                    textBox1.Text = "";

                    textBox2.Text = "";

        }

        

        public static void AddToLog(string logText, string path)

        {

            if (!Directory.Exists(path))

                Directory.CreateDirectory(path);

            string dosya = "etiket.out";

            string bat = "etiket.bat";

            if (!File.Exists(path + dosya))

                File.WriteAllText(path + dosya, "");

            File.WriteAllText(path + dosya, logText, Encoding.UTF8);

            if (!File.Exists(path + bat))

                File.WriteAllText(path + bat, "@COPY c:\\barkod\\etiket\\etiket.out LPT1:");

            Process.Start("C:\\barkod\\etiket\\etiket.bat");

        }

    }

}

 
Alıntı
Gönderildi : 24/12/2013 22:02
İsmail ÇOBAN
(@ismailcoban365)
Üye

kayıtları foreach döngüsünü kullanarak çekmeyi deneyiniz işini görecektir.

CevapAlıntı
Gönderildi : 25/12/2013 13:28
Paylaş: