C\#판매 관리 시스템 실현

C\#간단 하고 쉬 운 판매 관리 시스템 을 제작 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
1.전체적인 수요
1).간단 한 로그 인 인터페이스 가 있 음
2).상품 정 보 를 신속하게 조회,조회,추가,편집,저장 등 기능 을 할 수 있 습 니 다.
2.디자인 된 창 인터페이스
1).로그 인 화면
2).상품 정보의 조작 인터페이스
3.필요 한 지식
 1)C\#기초 문법
 2).ADO.NET 데이터베이스
잘 모 르 겠 습 니 다.제 홈 페이지 에 있 는 글 을 보 세 요.모두 C\#기초 에 관 한 지식 입 니 다.
4.구체 적 인 절차 와 코드
1).항목 생 성
먼저 vs 2017 을 열 고'항목 만 들 기'를 선택 하고'Windows 창 응용 프로그램'을 선택 하 십시오.상세 한 조작 은 내 가 이전에 쓴 간단 한 항목 들 을 볼 수 있다.
2).컨트롤 추가
로그 인 인터페이스 와 상품 정보 인 터 페 이 스 는 다음 과 같다.


그림 에 표 시 된 컨트롤 을 추가 해 볼 수 있 습 니 다.자세 한 내용 은 홈 페이지 의 C\#Windows 창 응용 디자인 시 리 즈 를 참조 하 십시오.상품 정보 인터페이스 맨 위 에는 tool strip 컨트롤 이 있 습 니 다.뒤에 원본 코드 를 보 내 고 원본 코드 를 참고 하여 작성 하면 C\#의 디자인 을 더욱 잘 알 수 있 습 니 다.
3).코드 추가
추가 할 코드 는 다음 과 같 습 니 다.코드 를 추가 하 는 방법 은 홈 페이지 의 글 소개 참조.
로그 인 화면:

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;

namespace EMS
{
    public partial class frmLogin : Form
    {
        BaseClass.BaseInfo baseinfo = new EMS.BaseClass.BaseInfo();
        BaseClass.cPopedom popedom = new EMS.BaseClass.cPopedom();
        public frmLogin()
        {
            InitializeComponent();
        }

        private void btnLogin_Click(object sender, EventArgs e)
        {
            if (txtUserName.Text == string.Empty)
            {
                MessageBox.Show("        !", "    ", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            DataSet ds = null;
            popedom.SysUser = txtUserName.Text;
            popedom.Password = txtUserPwd.Text;
            ds=baseinfo.Login(popedom);
            if (ds.Tables[0].Rows.Count > 0)
            {
                EMS.BaseInfo.frmStock frm_Stock = new EMS.BaseInfo.frmStock();
                frm_Stock.Show();                
            }
            else
            {
                MessageBox.Show("          !","    ",MessageBoxButtons.OK,MessageBoxIcon.Error);
            }
        }

        private void txtUserName_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyValue == 13) //      Enter 
                txtUserPwd.Focus();//        “  ”   
        }

        private void txtUserPwd_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyValue == 13)//      Enter 
                btnLogin.Focus();//        “  ”  
        }

        private void btnExit_Click(object sender, EventArgs e)
        {
            this.Close();
        }

      
    }
}
상품 메 인 인터페이스의 코드:

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;

namespace EMS.BaseInfo
{
    public partial class frmStock : Form
    {
        BaseClass.BaseInfo baseinfo = new EMS.BaseClass.BaseInfo();//  BaseInfo    
        BaseClass.cStockInfo stockinfo = new EMS.BaseClass.cStockInfo();//  cStockInfo    
        int G_Int_addOrUpdate = 0;//    /      
        public frmStock()
        {
            InitializeComponent();
        }

        private void tlBtnAdd_Click(object sender, EventArgs e)
        {
            this.editEnabled();//           
            this.clearText();//     
            G_Int_addOrUpdate = 0;//  0     
            DataSet ds = null;//       
            string P_Str_newTradeCode = "";//          
            int P_Int_newTradeCode = 0;//            
            ds = baseinfo.GetAllStock("tb_stock");//        
            if (ds.Tables[0].Rows.Count == 0)//          
            {
                txtTradeCode.Text = "T1001";//        
            }
            else
            {
                P_Str_newTradeCode = Convert.ToString(ds.Tables[0].Rows[ds.Tables[0].Rows.Count - 1]["tradecode"]);//           
                P_Int_newTradeCode = Convert.ToInt32(P_Str_newTradeCode.Substring(1, 4)) + 1;//          
                P_Str_newTradeCode = "T" + P_Int_newTradeCode.ToString();//        
                txtTradeCode.Text = P_Str_newTradeCode;//            
            }
        }
        //          
        private void editEnabled()
        {
            groupBox1.Enabled = true;
            tlBtnAdd.Enabled = false;
            tlBtnEdit.Enabled = false;
            tlBtnDelete.Enabled = false;
            tlBtnSave.Enabled = true;
            tlBtnCancel.Enabled = true;
        }
        //          
        private void cancelEnabled()
        {
            groupBox1.Enabled = false;
            tlBtnAdd.Enabled = true;
            tlBtnEdit.Enabled = true;
            tlBtnDelete.Enabled = true;
            tlBtnSave.Enabled = false;
            tlBtnCancel.Enabled = false;
        }
        //     
        private void clearText()
        {
            txtTradeCode.Text= string.Empty;
            txtFullName.Text = string.Empty;
            txtType.Text = string.Empty;
            txtStandard.Text = string.Empty;
            txtUnit.Text = string.Empty;
            txtProduce.Text = string.Empty;
        }
        //  DataGridView   
        private void SetdgvStockListHeadText() 
        {
            dgvStockList.Columns[0].HeaderText = "    ";
            dgvStockList.Columns[1].HeaderText = "    ";
            dgvStockList.Columns[2].HeaderText = "    ";
            dgvStockList.Columns[3].HeaderText = "    ";
            dgvStockList.Columns[4].HeaderText = "    ";
            dgvStockList.Columns[5].HeaderText = "    ";
            dgvStockList.Columns[6].HeaderText = "    ";
            dgvStockList.Columns[7].Visible = false;
            dgvStockList.Columns[8].HeaderText = "    (      )";
            dgvStockList.Columns[9].Visible = false;
            dgvStockList.Columns[10].HeaderText = "    ";
            dgvStockList.Columns[11].Visible = false;
            dgvStockList.Columns[12].Visible = false;
        }

        private void frmStock_Load(object sender, EventArgs e)
        {
            txtTradeCode.ReadOnly = true;//           
            this.cancelEnabled();//          
            //          
            dgvStockList.DataSource = baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;
            this.SetdgvStockListHeadText();//  DataGridView      
        }

        private void tlBtnSave_Click(object sender, EventArgs e)
        {
            //           
            if (G_Int_addOrUpdate == 0)
            {
                try
                {
                    //    
                    stockinfo.TradeCode = txtTradeCode.Text;
                    stockinfo.FullName = txtFullName.Text;
                    stockinfo.TradeType = txtType.Text;
                    stockinfo.Standard = txtStandard.Text;
                    stockinfo.Unit = txtUnit.Text;
                    stockinfo.Produce = txtProduce.Text;
                    //      
                    int id = baseinfo.AddStock(stockinfo);
                    MessageBox.Show("  --      --  !", "    !", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message,"    ", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                //    
                stockinfo.TradeCode = txtTradeCode.Text;
                stockinfo.FullName = txtFullName.Text;
                stockinfo.TradeType = txtType.Text;
                stockinfo.Standard = txtStandard.Text;
                stockinfo.Unit = txtUnit.Text;
                stockinfo.Produce = txtProduce.Text;
                //      
                int id = baseinfo.UpdateStock(stockinfo);
                MessageBox.Show("  --      --  !", "    !", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            dgvStockList.DataSource = baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;//           
            this.SetdgvStockListHeadText();//  DataGridView     
            this.cancelEnabled();//           
        }

        private void tlBtnEdit_Click(object sender, EventArgs e)
        {
            this.editEnabled();//           
            G_Int_addOrUpdate = 1;//  1     
        }

        private void tlBtnFind_Click(object sender, EventArgs e)
        {
            if (tlCmbStockType.Text == string.Empty)//          
            {
                MessageBox.Show("        !", "    !", MessageBoxButtons.OK, MessageBoxIcon.Error);
                tlCmbStockType.Focus();//               
                return;
            }
            else
            {
                if (tlTxtFindStock.Text.Trim() == string.Empty)//           
                {
                    //          
                    dgvStockList.DataSource = baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;
                    this.SetdgvStockListHeadText();//  DataGridView      
                    return;
                }
            }
            DataSet ds = null;//  DataSet  
            if (tlCmbStockType.Text == "    ") //       
            {
                stockinfo.Produce = tlTxtFindStock.Text;//      
                ds = baseinfo.FindStockByProduce(stockinfo, "tb_Stock");//            
                dgvStockList.DataSource = ds.Tables[0].DefaultView;//        
            }
            else//       
            {
                stockinfo.FullName = tlTxtFindStock.Text;//      
                ds = baseinfo.FindStockByFullName(stockinfo, "tb_stock");//            
                dgvStockList.DataSource = ds.Tables[0].DefaultView;//        
            }
            this.SetdgvStockListHeadText();//  DataGridView     
        }

        private void tlBtnDelete_Click(object sender, EventArgs e)
        {
            if (txtTradeCode.Text.Trim() == string.Empty)//           
            {
                MessageBox.Show("  --      --  !", "    !", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            stockinfo.TradeCode = txtTradeCode.Text;//      
            int id = baseinfo.DeleteStock(stockinfo);//      
            MessageBox.Show("  --      --  !", "    !", MessageBoxButtons.OK, MessageBoxIcon.Information);
            dgvStockList.DataSource = baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;//           
            this.SetdgvStockListHeadText();//  DataGridView     
            this.clearText();//     
        }

        private void tlBtnCancel_Click(object sender, EventArgs e)
        {
            this.cancelEnabled();//           
        }

        private void dgvStockList_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            txtTradeCode.Text = this.dgvStockList[0, dgvStockList.CurrentCell.RowIndex].Value.ToString();//      
            txtFullName.Text = this.dgvStockList[1, dgvStockList.CurrentCell.RowIndex].Value.ToString();//      
            txtType.Text = this.dgvStockList[2, dgvStockList.CurrentCell.RowIndex].Value.ToString();//      
            txtStandard.Text = this.dgvStockList[3, dgvStockList.CurrentCell.RowIndex].Value.ToString();//      
            txtUnit.Text = this.dgvStockList[4, dgvStockList.CurrentCell.RowIndex].Value.ToString();//      
            txtProduce.Text = this.dgvStockList[5, dgvStockList.CurrentCell.RowIndex].Value.ToString();//      
        }

        private void tlBtnExit_Click(object sender, EventArgs e)
        {
            this.Close();//      
        }

        private void dgvStockList_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {

        }
    }
}
Main.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace EMS
{
    static class Program
    {
        /// <summary>
        ///          。
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new frmLogin());
        }
    }
}
추가 할 그림 소 재 는 원본 폴 더 의 icon 과 image 폴 더 에 있 으 며,보기 싫 은 것 은 스스로 찾 을 수 있 습 니 다.
코드 를 추가 할 때 자신 이 추가 한 컨트롤 과 일일이 대응 해 야 합 니 다.
4).데이터베이스 구축
데이터 베 이 스 를 구체 적 으로 추가 하 는 방법 은 제 홈 페이지 의 글 인 에서 말 했 습 니 다.메뉴 표시 줄 에 있 는'항목'-'새로운 항목 추가'-'서비스 기반 데이터 베이스',구체 적 인 조작 은 제 앞의 글 을 볼 수 있 습 니 다.이번에 제 시 된 소스 코드 는 데이터베이스 가 있어 서 스스로 수정 하고 추가 할 수 있 습 니 다.

5).디 버 깅 실행
자신 이 쓴 것 에 따라 실행 하고 제 공 된 소스 코드 수정 오 류 를 대조 하 며 실행 인터페이스 는 다음 과 같 습 니 다.
로그 인 화면:

로그 인 계 정 이름:mr 비밀번호:mrsoft,원본 코드 에 따라 스스로 수정 할 수 있 습 니 다.
정보 인터페이스:

실행 중인 화면 을 작성 하면 이 화면 을 볼 수 있 습 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기