亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dlgstorepd3.cpp

?? 主要功能 企業倉庫管理系統由基本信息管理模塊、入庫管理模塊、庫存管理模塊、查詢管理模塊等幾部分組成。 &#61553 基本信息管理模塊 該模塊主要包括操作員管理、商品信息管理、庫存信息管理、供
?? CPP
字號:
// DlgStorePD3.cpp : implementation file
//

#include "stdafx.h"
#include "aaa.h"
#include "DlgStorePD3.h"
#include "CustomGrid.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern _ConnectionPtr m_pCon;  
extern _RecordsetPtr m_pRs; 
extern CAaaApp theApp;
/////////////////////////////////////////////////////////////////////////////
// CDlgStorePD3 dialog


CDlgStorePD3::CDlgStorePD3(CWnd* pParent /*=NULL*/)
	: CDialog(CDlgStorePD3::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDlgStorePD3)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void CDlgStorePD3::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDlgStorePD3)
	DDX_Control(pDX, IDC_STORE_PD_PERSON, memo);
	DDX_Control(pDX, IDC_STORE_MARK, checkman);
	DDX_Control(pDX, IDC_DATETIMEPICKER1, checktime);
	DDX_Control(pDX, IDC_COMBO2, checkspec);
	DDX_Control(pDX, IDC_LIST3, listinfo);
	DDX_Control(pDX, IDC_LIST1, list);
	DDX_Control(pDX, IDC_COMBO1, storagename);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDlgStorePD3, CDialog)
	//{{AFX_MSG_MAP(CDlgStorePD3)
	ON_NOTIFY(NM_DBLCLK, IDC_LIST3, OnDblclkList3)
	ON_NOTIFY(LVN_KEYDOWN, IDC_LIST3, OnKeydownList3)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDlgStorePD3 message handlers

void CDlgStorePD3::AddStorage()
{
	storagename.ResetContent();
	m_pRs->Close();
	CString sql;
	sql.Format("select storagename from tb_storageinfo");
	m_pRs->Open((_variant_t)sql,m_pCon.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
	while (! m_pRs->adoEOF)
	{
		storagename.AddString((TCHAR*)(_bstr_t)m_pRs->GetFields()->GetItem((long)0)->Value);
		m_pRs->MoveNext();
	}
}

BOOL CDlgStorePD3::OnInitDialog() 
{
	CDialog::OnInitDialog();
	//添加倉庫名稱
	AddStorage();
	list.InsertColumn(0,"商品編號");
	list.InsertColumn(1,"商品名稱");
	list.InsertColumn(2,"規格");
	list.InsertColumn(3,"數量");

	listinfo.ModifyStyle(LVS_EDITLABELS,0);//禁止編輯標題
	listinfo.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_ONECLICKACTIVATE|LVS_EX_INFOTIP|LVS_EX_SUBITEMIMAGES|LVS_EX_GRIDLINES );
	listinfo.InsertColumn(0,"商品編號");
	listinfo.InsertColumn(1,"商品名稱");
	listinfo.InsertColumn(2,"規格");
	listinfo.InsertColumn(3,"助記碼");
	listinfo.InsertColumn(4,"默認價格");

	//設置列寬度
	list.SetColumnWidth(0,150);
	list.SetColumnWidth(1,250);
	list.SetColumnWidth(2,80);
	list.SetColumnWidth(3,80);

	listinfo.SetColumnWidth(0,80);
	listinfo.SetColumnWidth(1,100);
	listinfo.SetColumnWidth(2,60);
	listinfo.SetColumnWidth(3,60);
	listinfo.SetColumnWidth(4,60);
	//添加一行
	list.InsertItem(0,"");
	listinfo.SetParent(&list);
	return TRUE;  	              // EXCEPTION: OCX Property Pages should return FALSE
}

BOOL CDlgStorePD3::PreTranslateMessage(MSG* pMsg) 
{
	if (pMsg->message == WM_KEYDOWN)
	{
		if (pMsg->hwnd == list.edit.m_hWnd)
		{
			LimitEdit();
			if (pMsg->wParam == 34)
			{
				ShowListinfo();
			}
			else if (pMsg->wParam ==VK_DELETE)//按delete鍵刪除表格當前行
				DeleteCurRow();
		}
		else if ((pMsg->hwnd ==listinfo.m_hWnd)&&(pMsg->wParam == 13))
		{
			OnDblclkList3(NULL,NULL);
			return true;
		}
		/****************************************************************
		說明:  表格中編輯框獲得焦點時,按Enter鍵控制單元格焦點移動
		****************************************************************/
		if ((pMsg->wParam == 13)&&(pMsg->hwnd==list.edit.m_hWnd))
		{
			MoveFocus();
			return true;
		}
		if (pMsg->wParam==13)
			pMsg->wParam = 9;

	}
	/****************************************************************
	說明:  表格中編輯框改變時的事件
	****************************************************************/
	if ((pMsg->message == WM_KEYUP)&&(pMsg->hwnd == list.edit.m_hWnd))
	{
		EditChange();	
	}
	if (pMsg->message==WM_LBUTTONDOWN)
	{
		if (pMsg->hwnd!= listinfo.m_hWnd)
			listinfo.ShowWindow(SW_HIDE);	
	}
	/****************************************************************
	說明:  在單擊表格時,根據當前列判斷是否顯示編輯框
	****************************************************************/
	if ((pMsg->message ==WM_LBUTTONDOWN)&&(pMsg->hwnd ==list.m_hWnd))
	{
		//當前列為商品編號,商品名稱為空,顯示編輯框,在當前列為商品名稱,商品編號為空,顯示編輯框,
		CString tempID,tempname;
		LVHITTESTINFO pos;
		pos.pt.x = LOWORD(pMsg->lParam);
		pos.pt.y = HIWORD(pMsg->lParam);
		pos.flags = LVHT_ABOVE;
		int row,col;
		row = -1;
		col = -1;
		if (list.SubItemHitTest(&pos)>=0)
		{
			list.SetFocus();
			row = pos.iItem;
			col = pos.iSubItem;		
			tempID = list.GetItemText(row,0);
			tempname = list.GetItemText(row,1);			
			list.showedit =true;	
			if ((tempname.IsEmpty()==false)&&(col == 0))
				list.showedit =false;
			else if((tempID.IsEmpty()==false)&&(col == 1))
				list.showedit =false;
		}
	}
	return CDialog::PreTranslateMessage(pMsg);
}

void CDlgStorePD3::OnOK()
{

}

void CDlgStorePD3::OnCancel()
{

}

void CDlgStorePD3::LimitEdit()
{
	list.edit.IsNumber = false;
	//在修改商品數據時只允許輸入數字
	if (list.col ==3)
	{
		list.edit.IsNumber = true;
	}
}

void CDlgStorePD3::DeleteCurRow()
{
	int currow;
	currow = list.row;
	if (currow!=-1)
	{
		if (MessageBox("確實要刪除當前行嗎?","提示",MB_YESNO)==IDYES)
		{
			int m = list.GetItemCount();
			if (m >1)
			{
				for (int i = currow+1;i<list.GetItemCount();i++)
				{
					for(int c = 0; c<7 ;c++)
					{
						list.SetItemText(i-1,c,list.GetItemText(i,c));
					}
				}
				list.DeleteItem(list.GetItemCount()-1);
			}
			else
			{
				for (int i = 0;i< 7;i++)
				{
					list.SetItemText(0,i,"");
				}
			}
		}
	}
}

void CDlgStorePD3::EditChange()
{
	CString str;
	list.edit.GetWindowText(str);
		CString sql = "";
		switch (list.col)
		{
		case 0 : 
			{
				if (!str.IsEmpty())
					sql.Format("select * from tb_merchandiseinfo where id like '%s%%' or shortname like '%s%%' ",str,str);
				break;
			}
		case 1 : 
			{
				if (!str.IsEmpty())
					sql.Format("select * from tb_merchandiseinfo where name like '%s%%' or shortname like '%s%%'",str,str);
				break;
			}
		default:
			break;
		}
		if (! sql.IsEmpty())
		{
			m_pRs->raw_Close();
			m_pRs->Open((_bstr_t)sql,m_pCon.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
			if (m_pRs->RecordCount>0)
			{
				listinfo.DeleteAllItems();
				int i=0;
				while(! m_pRs->adoEOF)
				{
					listinfo.InsertItem(100,"");
					for (int m = 0;m<5;m++)
					listinfo.SetItemText(i,m,(TCHAR*)(_bstr_t)m_pRs->GetFields()->GetItem((long)m)->Value);
					m_pRs->MoveNext();
					i +=1;
				}
				ShowListInfo();
			}
			else
				listinfo.ShowWindow(SW_HIDE);
		}
		else
			listinfo.ShowWindow(SW_HIDE);
}

void CDlgStorePD3::ShowListInfo()
{
	CRect rect;
	list.GetSubItemRect(list.row,list.col,LVIR_BOUNDS,rect);
	listinfo.MoveWindow(rect.left,rect.bottom+1,300,150);
	listinfo.ShowWindow(SW_SHOW);
}

void CDlgStorePD3::OnDblclkList3(NMHDR* pNMHDR, LRESULT* pResult) 
{
	int row = listinfo.GetSelectionMark();
	if (row!=-1)
	{
		CString temp;
		temp = listinfo.GetItemText(row,0);
		//設置商品編號
		list.SetItemText(list.row,0,temp);
		//設置商品名稱
		list.SetItemText(list.row,1,listinfo.GetItemText(row,1));
		list.SetItemText(list.row,2,listinfo.GetItemText(row,2));
		listinfo.ShowWindow(SW_HIDE);
	}

	//移動編輯框
	//MoveFocus();
	list.col =3;
	list.ShowEdit();	
	//*pResult = 0;
}

void CDlgStorePD3::OnKeydownList3(NMHDR* pNMHDR, LRESULT* pResult) 
{
	LV_KEYDOWN* pLVKeyDow = (LV_KEYDOWN*)pNMHDR;
	// TODO: Add your control notification handler code here
	
	*pResult = 0;
}

void CDlgStorePD3::MoveFocus()
{
	list.DisposeEdit(true);
	if (list.col <4)
	{
		list.col = list.col+1;
		CString tempID,tempname;
		tempID = list.GetItemText(list.row,0);
		tempname = list.GetItemText(list.row,1);
		list.showedit = true;
		if ((tempname.IsEmpty()==false)&&(list.col == 0))
			list.showedit =false;
		else if((tempID.IsEmpty()==false)&&(list.col == 1))
			list.showedit =false;
		list.ShowEdit();
	}
	else
	{
		AddNewRow();
	}
}

void CDlgStorePD3::AddNewRow()
{
	int counts = list.GetItemCount();
	if (list.row == counts-1)//當前行為最后一行
	{
		list.InsertItem(100,"");
		list.row+=1;			
		list.col = 0;
		list.ShowEdit();
	}
	else
	{
		list.row+=1;
		list.col = 0;
		list.ShowEdit();
	}
}

void CDlgStorePD3::ShowListinfo()
{
	if (listinfo.IsWindowVisible())
	{
		listinfo.SetFocus();
		listinfo.SetSelectionMark(1);
	}
}

bool CDlgStorePD3::InfoIsNull(int main)
{
	if (main ==0)
	{
		CString c_storage,c_checkspec,c_checkman,c_memo;
		storagename.GetWindowText(c_storage);
		checkspec.GetWindowText(c_checkspec);
		checkman.GetWindowText(c_checkman);
		memo.GetWindowText(c_memo);
		if (c_storage.IsEmpty()||c_checkspec.IsEmpty()||c_checkman.IsEmpty()||c_memo.IsEmpty())
			return true;
	}
	else if (main ==1)
	{
		int rowcount = list.GetItemCount();
		if (rowcount ==-1)
			return true;
		for (int r = 0;r <rowcount;r++)
			for (int i = 0;i<4;i++)
			{
				CString temp;
				temp = list.GetItemText(r,i);
				if (temp.IsEmpty()==true)
					return true;
			}	
	}
	return false;
}

void CDlgStorePD3::CheckOporate()
{
	if (InfoIsNull(0))
	{
		MessageBox("盤點信息不能為空.","提示",64);
		return;
	}
	if (InfoIsNull(1))
	{
		MessageBox("商品信息不能為空.","提示",64);
		return;
	}
	CString c_storage,c_checkspec,c_checkman,c_memo,c_time;
	CString c_mercandiseid,c_num;
	float f_num;

	int spec;
	spec = checkspec.GetCurSel(); //0報損 1 報溢

	storagename.GetWindowText(c_storage);
	checkspec.GetWindowText(c_checkspec);
	checkman.GetWindowText(c_checkman);
	memo.GetWindowText(c_memo);
	CTime temp;
	checktime.GetTime(temp);
	c_time = temp.Format("%Y-%m-%d");
	CString sql;
	sql.Format("sp_check '%s','%s','%s',%i,'%s','%s'",c_storage,c_checkman,c_time,spec,c_memo,"temp");
	try
	{
		m_pRs->raw_Close();
		m_pRs->Open((_variant_t)sql,m_pCon.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdUnknown);
		CString id ;//記錄盤點單號
		id =(TCHAR*)(_bstr_t) m_pRs->GetFields()->GetItem("tempid")->Value;
		int row = 0;
		int rows = list.GetItemCount();
		for (int i = 0;i<rows;i++)
		{
			c_mercandiseid = list.GetItemText(row,0);
			c_num = list.GetItemText(row,3);
			f_num = atof(c_num);

			sql.Format("insert into tb_check_sub values ('%s','%s',%f)",id,c_mercandiseid,f_num);
			m_pRs->raw_Close();
			
			m_pRs->Open((_variant_t)sql,m_pCon.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);

			//修改商品庫存
			if (spec == 0)//報損
			{
				sql.Format("update tb_merchandisestorage set storagenum = storagenum - %f where merchandiseid = '%s' and storagename = '%s'",f_num,c_mercandiseid,c_storage);
			}
			else //報溢
			{
				sql.Format("update tb_merchandisestorage set storagenum = storagenum + %f where merchandiseid = '%s' and storagename = '%s'",f_num,c_mercandiseid,c_storage);
			}
			m_pRs->raw_Close();
			m_pRs->Open((_variant_t)sql,m_pCon.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
			row +=1;
		}
		CancelOperate();
		MessageBox("操作成功,票號為 "+id,"提示",64);

	}
	catch(_com_error)
	{
		MessageBox("操作失敗","提示",64);
	}
}



void CDlgStorePD3::CancelOperate()
{
	list.DeleteAllItems();
	list.InsertItem(0,"");
	storagename.SetCurSel(-1);
	checkspec.SetCurSel(-1);
	CTime time = CTime::GetCurrentTime();
	checktime.SetTime(&time);
	checkman.SetWindowText("");
	memo.SetWindowText("");
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91福利精品视频| 顶级嫩模精品视频在线看| 久久精品国产精品亚洲红杏| 成人免费观看av| 8v天堂国产在线一区二区| 国产精品二三区| 九九九久久久精品| 在线不卡免费av| 亚洲人成影院在线观看| 国产精一区二区三区| 欧美精品在欧美一区二区少妇| 久久精品水蜜桃av综合天堂| 图片区小说区区亚洲影院| 91亚洲精品久久久蜜桃网站| 亚洲美女免费视频| 91精品久久久久久蜜臀| 亚洲国产成人午夜在线一区| 蜜臀av在线播放一区二区三区| 在线免费观看成人短视频| 亚洲欧洲美洲综合色网| 粉嫩av亚洲一区二区图片| 亚洲激情av在线| 国产精品1区二区.| 久久久国产精品午夜一区ai换脸| 免费观看91视频大全| 欧美美女一区二区三区| 婷婷开心久久网| 欧美日韩国产色站一区二区三区| 一区二区三区四区中文字幕| a4yy欧美一区二区三区| 成人免费在线播放视频| 91猫先生在线| 亚洲一区二区三区四区中文字幕| 91高清在线观看| 亚洲图片有声小说| 欧美精品自拍偷拍| 免费看日韩a级影片| 欧美成人aa大片| 国产乱人伦精品一区二区在线观看| 2021中文字幕一区亚洲| 国产精品一区二区久激情瑜伽| 久久精品视频一区二区| 懂色av中文一区二区三区| 成人免费一区二区三区视频| 色嗨嗨av一区二区三区| 午夜精品久久久久久久久久久| 51久久夜色精品国产麻豆| 国内精品自线一区二区三区视频| 日本高清视频一区二区| 亚洲国产成人tv| 亚洲免费在线视频| 91久久国产最好的精华液| 亚洲福利视频一区二区| 欧美草草影院在线视频| 国产成人免费视频精品含羞草妖精| 久久精品人人做人人爽人人| 不卡的av网站| 午夜视频一区在线观看| ww久久中文字幕| 色悠悠久久综合| 蜜臀久久99精品久久久久宅男| 久久精品一区二区三区不卡 | 制服丝袜一区二区三区| 开心九九激情九九欧美日韩精美视频电影| 久久品道一品道久久精品| 懂色av一区二区在线播放| 亚洲影视资源网| 精品国产在天天线2019| 精品99999| 色88888久久久久久影院野外| 免费成人在线网站| 亚洲欧洲av另类| 日韩女优制服丝袜电影| 91视频观看免费| 精品一区二区三区蜜桃| 一区二区三区欧美久久| 亚洲精品一区二区三区香蕉| 在线观看亚洲精品| 国产一区在线观看视频| 午夜久久久久久久久久一区二区| 国产婷婷一区二区| 91精品国产色综合久久| 91麻豆福利精品推荐| 国产一区二区三区香蕉| 午夜精品成人在线视频| 中文字幕一区在线观看| 久久午夜国产精品| 在线不卡免费欧美| 欧美午夜不卡在线观看免费| 成人99免费视频| 国产精品一区二区男女羞羞无遮挡| 亚洲福中文字幕伊人影院| 国产精品卡一卡二| 久久久久久免费毛片精品| 国产欧美日韩在线观看| 97精品国产露脸对白| 国产精品自拍三区| 亚洲va韩国va欧美va精品| 激情综合网最新| 日本在线播放一区二区三区| 亚洲精品国产第一综合99久久| 国产嫩草影院久久久久| 久久综合色婷婷| 欧美大片国产精品| 欧美一区二区视频在线观看 | 国产成人自拍网| 麻豆精品在线播放| 日本大胆欧美人术艺术动态 | 一区二区三区小说| 中文字幕中文字幕一区二区| 国产精品视频在线看| 国产欧美精品一区| 亚洲国产精品成人综合| 久久久午夜精品| 中文字幕精品三区| 国产精品国产三级国产有无不卡 | 国产福利电影一区二区三区| 国模无码大尺度一区二区三区| 日本sm残虐另类| 麻豆一区二区三区| 九九热在线视频观看这里只有精品| 麻豆视频观看网址久久| 日韩国产精品91| 久久超级碰视频| 国产精品一区不卡| 成人免费毛片a| 色综合 综合色| 欧美精品在线观看播放| 日韩一卡二卡三卡四卡| 精品国产污污免费网站入口 | 成人欧美一区二区三区白人| 亚洲视频狠狠干| 亚洲成人动漫精品| 久久疯狂做爰流白浆xx| 5月丁香婷婷综合| 欧美videos大乳护士334| 久久久久久黄色| 亚洲欧美日韩系列| 五月婷婷久久丁香| 狠狠色综合色综合网络| 成人97人人超碰人人99| 亚洲成a人片在线观看中文| 亚洲精选一二三| 亚洲一区在线视频| 视频一区二区三区在线| 国产一区二区三区日韩| www.视频一区| 91麻豆精品国产自产在线观看一区| 欧美大片顶级少妇| 亚洲欧美另类小说视频| 日本免费在线视频不卡一不卡二| 国产精品羞羞答答xxdd| 色婷婷综合久久久久中文一区二区 | 日韩女优av电影在线观看| 2020国产精品自拍| 亚洲影视在线观看| 国产一区二区免费看| 色婷婷国产精品| 2023国产精品| 亚洲成人午夜影院| 国产69精品久久久久毛片| 欧美日韩高清一区| 国产精品青草久久| 久久精品国产亚洲一区二区三区| 99久久精品国产毛片| 精品伦理精品一区| 亚洲国产wwwccc36天堂| 国产精品一级黄| 欧美一区二区三区四区在线观看| 国产精品久久精品日日| 国模娜娜一区二区三区| 欧美在线一区二区三区| 中文一区二区在线观看| 久久精品国产精品亚洲红杏| 91精彩视频在线观看| 国产欧美日韩精品一区| 免费成人在线视频观看| 欧美视频中文字幕| 亚洲色图制服丝袜| 成人自拍视频在线| 欧美精品一区二区三区很污很色的| 亚洲黄色录像片| 国产成人aaa| 久久久久久**毛片大全| 麻豆精品蜜桃视频网站| 777欧美精品| 五月婷婷综合激情| 欧美视频在线观看一区二区| 亚洲人成人一区二区在线观看| 国产成人综合亚洲网站| 精品国产乱码久久久久久浪潮| 日韩 欧美一区二区三区| 欧美视频精品在线| 亚洲永久免费av| 欧美视频一区二区三区在线观看| 一区二区中文视频| 欧美成人bangbros| 精久久久久久久久久久| 精品国产99国产精品| 精品一区二区成人精品|