ReduceEquip.cpp
资源名称:Equipment.rar [点击查看]
上传用户:latoyin
上传日期:2017-10-19
资源大小:2882k
文件大小:8k
源码类别:
数据库系统
开发平台:
Visual C++
- // ReduceEquip.cpp : implementation file
- //
- #include "stdafx.h"
- #include "Equipment.h"
- #include "ReduceEquip.h"
- #include "NumberEdit.h"
- #ifdef _DEBUG
- #define new DEBUG_NEW
- #undef THIS_FILE
- static char THIS_FILE[] = __FILE__;
- #endif
- extern CEquipmentApp theApp;
- /////////////////////////////////////////////////////////////////////////////
- // CReduceEquip dialog
- CReduceEquip::CReduceEquip(CWnd* pParent /*=NULL*/)
- : CDialog(CReduceEquip::IDD, pParent)
- {
- m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINTITLE);
- }
- void CReduceEquip::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- //{{AFX_DATA_MAP(CReduceEquip)
- DDX_Control(pDX, IDC_ID, equipid);
- DDX_Control(pDX, IDC_REDUCEMODE, reducemode);
- DDX_Control(pDX, IDC_QUERYCONDITION, querycondition);
- DDX_Control(pDX, IDC_QUERY, query);
- DDX_Control(pDX, IDC_NAME, clearname);
- DDX_Control(pDX, IDC_CLERAERNING, clearearning);
- DDX_Control(pDX, IDC_CLEARREASON, clearreason);
- DDX_Control(pDX, IDC_CLEARECHARGE, clearcharge);
- DDX_Control(pDX, IDC_CLEARDATE, cleardate);
- DDX_Control(pDX, IDC_LIST1, list);
- //}}AFX_DATA_MAP
- }
- BEGIN_MESSAGE_MAP(CReduceEquip, CDialog)
- //{{AFX_MSG_MAP(CReduceEquip)
- ON_COMMAND(ID_BUTTONREFRESH, OnButtonrefresh)
- ON_BN_CLICKED(IDC_QUERY, OnQuery)
- ON_NOTIFY(NM_CLICK, IDC_LIST1, OnClickList1)
- ON_COMMAND(ID_BUTTONDELETE, OnButtondelete)
- ON_COMMAND(ID_BUTTONCLOSE, OnButtonclose)
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
- /////////////////////////////////////////////////////////////////////////////
- // CReduceEquip message handlers
- void CReduceEquip::OnOK()
- {
- // TODO: Add extra validation here
- }
- void CReduceEquip::OnCancel()
- {
- // TODO: Add extra cleanup here
- CDialog::OnCancel();
- }
- BOOL CReduceEquip::OnInitDialog()
- {
- CDialog::OnInitDialog();
- SetIcon(m_hIcon,true);
- toolbar.Create(TBSTYLE_FLAT|CCS_TOP|WS_CHILD|WS_VISIBLE|WS_BORDER|CCS_ADJUSTABLE|TBSTYLE_WRAPABLE,CRect(0,0,0,0),this,IDR_TOOLBAR2);
- toolbar.SetBitmapSize(CSize(32,32));
- imagelist.Create(32,32,ILC_COLOR32|ILC_MASK,0,0);
- for (int n =0;n<5;n++)
- {
- imagelist.Add(theApp.LoadIcon(n+IDI_ICON1));
- }
- toolbar.SetImageList(&imagelist);
- TBBUTTON buttons[4];
- for (int i =0; i<4;i++)
- {
- CString str;
- int strlength;
- CCHAR *temp;
- if (i<1)
- buttons[i].fsStyle =TBSTYLE_SEP;
- else
- {
- buttons[i].fsStyle =TBSTYLE_BUTTON;
- }
- buttons[i].fsState =TBSTATE_ENABLED;
- buttons[i].dwData =0;
- if ((i ==2)|(i==3))
- {
- buttons[i].idCommand = ID_BUTTONADD+i+1;
- buttons[i].iBitmap = i+1;
- str.LoadString(ID_BUTTONADD+i+1);
- }
- else
- {
- buttons[i].idCommand = ID_BUTTONADD+i+1;
- buttons[i].iBitmap = i+1;
- str.LoadString(IDS_redusemange);//第一个按钮为分隔条
- }
- strlength = str.GetLength()+1;
- temp = str.GetBufferSetLength(strlength);
- temp[strlength]= ' ';
- temp[strlength-1]= ' ';
- buttons[i].iString = toolbar.AddStrings(temp);
- str.ReleaseBuffer();
- }
- toolbar.AutoSize();
- toolbar.AddButtons(4,buttons);
- toolbar.ShowWindow(SW_SHOW);
- list.SetExtendedStyle(LVS_REPORT|LVS_EX_FULLROWSELECT|LVS_OWNERDRAWFIXED |LVS_EX_FLATSB|LVS_SHOWSELALWAYS|LVS_EX_HEADERDRAGDROP);
- list.InsertColumn(100,"资产编号");
- list.InsertColumn(100,"资产名称");
- list.InsertColumn(100,"类别");
- list.InsertColumn(100,"增加方式");
- list.InsertColumn(100,"入账原值");
- list.InsertColumn(100,"累计折旧");
- for (i =0 ;i<6;i++)
- list.SetColumnWidth(i,100);
- OnButtonrefresh();
- return TRUE; // return TRUE unless you set the focus to a control
- // EXCEPTION: OCX Property Pages should return FALSE
- }
- void CReduceEquip::AddEquipName()
- {
- _RecordsetPtr temp;
- temp =theApp.datamanage->Record1;
- temp->raw_Close();
- temp->Open("select distinct name from tb_equipmentinfo where enabled = 0",theApp.datamanage->GetConn().GetInterfacePtr(),adOpenKeyset,adLockPessimistic,adCmdText);
- querycondition.ResetContent();
- while (!temp->ADOEOF)
- {
- CString str;
- str = temp->GetFields()->GetItem("name")->Value.bstrVal;
- querycondition.AddString(str);
- temp->MoveNext();
- }
- }
- void CReduceEquip::AddReduceMode()
- {
- _RecordsetPtr temp;
- temp =theApp.datamanage->Record1;
- temp->raw_Close();
- temp->Open("select decreasekinds from tb_decreasekinds",theApp.datamanage->GetConn().GetInterfacePtr(),adOpenKeyset,adLockPessimistic,adCmdText);
- reducemode.ResetContent();
- while (!temp->ADOEOF)
- {
- CString str;
- str = temp->GetFields()->GetItem("decreasekinds")->Value.bstrVal;
- reducemode.AddString(str);
- temp->MoveNext();
- }
- }
- void CReduceEquip::ClearText()
- {
- CWnd * temp;
- temp = this;
- for (int i= 0;i<8;i++)
- {
- temp = this->GetNextDlgTabItem(temp);
- temp->SetWindowText("");
- }
- //设置日期
- CTime t=CTime::GetCurrentTime();
- cleardate.SetTime(&t);
- list.DeleteAllItems();
- }
- bool CReduceEquip::InfoIsNull()
- {
- CWnd * temp;
- temp = this;
- for (int i= 2;i<8;i++)
- {
- temp = this->GetNextDlgTabItem(temp);
- CString str;
- temp->GetWindowText(str);
- if (str.IsEmpty())
- {
- return true;
- }
- }
- return false;
- }
- void CReduceEquip::OnButtonrefresh()
- {
- AddEquipName();
- AddReduceMode();
- ClearText();
- }
- void CReduceEquip::OnQuery()
- {
- CString str;
- querycondition.GetWindowText(str);
- if(!str.IsEmpty())
- {
- _RecordsetPtr temp;
- list.DeleteAllItems();
- temp =theApp.datamanage->Record1;
- temp->raw_Close();
- CString sql;
- sql.Format("select * from tb_equipmentinfo where name = '%s' and enabled = 0 ",str);
- temp->Open((_bstr_t)sql,theApp.datamanage->GetConn().GetInterfacePtr(),adOpenKeyset,adLockPessimistic,adCmdText);
- if (temp->RecordCount>0)
- {
- int row = 0;
- while (!temp->ADOEOF)
- {
- list.InsertItem(row,"",0);
- for (int i= 0;i<6;i++)
- {
- CString str;
- _variant_t value;
- value = temp->GetFields()->GetItem((long)i)->Value;
- str = (TCHAR *)(_bstr_t)value;
- list.SetItemText(row,i,str);
- }
- row +=1;
- temp->MoveNext();
- }
- }
- else
- MessageBox("没有发现符合条件的数据","提示",64);
- }
- else
- MessageBox("请设置查询条件","提示",64);
- }
- void CReduceEquip::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
- {
- int row = list.GetSelectionMark();
- CString str;
- if (row !=-1)
- {
- str =list.GetItemText(row,0);
- equipid.SetWindowText(str);
- str =list.GetItemText(row,1);
- clearname.SetWindowText(str);
- }
- else
- {
- equipid.SetWindowText("");
- clearname.SetWindowText("");
- }
- *pResult = 0;
- }
- void CReduceEquip::OnButtondelete()
- {
- if (!InfoIsNull())
- {
- try
- {
- theApp.datamanage->GetConn()->BeginTrans();//开始一个事务
- CString sql,str;
- equipid.GetWindowText(str);
- sql.Format("update tb_equipmentinfo set enabled = 1 where equipmentid = '%s'",str);
- theApp.datamanage->Record1->raw_Close();
- theApp.datamanage->Record1->Open((_variant_t)sql,theApp.datamanage->GetConn().GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
- CString c_id,c_mode,c_earning, c_charge,c_reason,c_date;
- equipid.GetWindowText(c_id);
- reducemode.GetWindowText(c_mode);
- clearearning.GetWindowText(c_earning);
- clearcharge.GetWindowText(c_charge);
- clearreason.GetWindowText(c_reason);
- cleardate.GetWindowText(c_date);
- float earning,charge;
- earning = atof(c_earning);
- charge = atof(c_charge);
- sql.Format("insert into tb_equipmentdecrease values ('%s','%s',%f,%f,'%s','%s')",c_id,c_mode,earning,charge,c_reason,c_date);
- theApp.datamanage->Record1->raw_Close();
- theApp.datamanage->Record1->Open((_variant_t)sql,theApp.datamanage->GetConn().GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
- theApp.datamanage->GetConn()->CommitTrans();//提交事务
- MessageBox("操作成功.","提示",64);
- }
- catch(_com_error)
- {
- theApp.datamanage->GetConn()->RollbackTrans();//出现异常,回滚事务
- MessageBox("系统出错.","提示",64);
- }
- OnButtonrefresh();
- }
- else
- {
- MessageBox("基础信息不能为空.","提示",64);
- }
- }
- BOOL CReduceEquip::PreTranslateMessage(MSG* pMsg)
- {
- if (pMsg->message ==WM_KEYDOWN)
- if (pMsg->wParam ==13)
- pMsg->wParam = 9;
- return CDialog::PreTranslateMessage(pMsg);
- }
- void CReduceEquip::OnButtonclose()
- {
- EndDialog(0);
- }