// ShowMember.cpp : implementation file // #include "stdafx.h" #include "ylgl.h" #include "ShowMember.h" #include "MyMdi.H" #include "AddMember.h" #include "ShowMemberReg.h" #include "InputCard2Dlg.h" #include "ShowCard2Reg.h" #include "InputCard2Point.h" #include "UsePoint.h" #include "InputCard3Dlg.h" #include "MemberCardFunc.h" #include "SendMsgDlg.h" #include "BasicExcelVC6.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif #pragma comment(lib, "Shlwapi.lib") ///////////////////////////////////////////////////////////////////////////// // ShowMember IDC_STATIC2 IMPLEMENT_DYNCREATE(ShowMember, MyFormView) ShowMember::ShowMember() : MyFormView(ShowMember::IDD) { //{{AFX_DATA_INIT(ShowMember) m_filter = _T(""); m_bInit=0; m_year = atoi(g_date.Left (4)); m_nAdd=0; //}}AFX_DATA_INIT if(g_bAllBranch) { m_nAdd=1; } } ShowMember::~ShowMember() { } void ShowMember::DoDataExchange(CDataExchange* pDX) { MyFormView::DoDataExchange(pDX); //{{AFX_DATA_MAP(ShowMember) DDX_Control(pDX, IDC_SPIN1, m_spinyear); DDX_Control(pDX, IDC_LIST2, m_List1); DDX_Control(pDX, IDC_STATIC1, m_static1); DDX_Text(pDX, IDC_EDIT15, m_filter); DDX_Text(pDX, IDC_EDITyear, m_year); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(ShowMember, MyFormView) //{{AFX_MSG_MAP(ShowMember) ON_BN_CLICKED(IDC_BUTclose, OnBUTclose) ON_BN_CLICKED(IDC_BUTTON1, OnButton1) ON_WM_TIMER() ON_BN_CLICKED(IDC_BUTTON2, OnButton2) ON_NOTIFY(NM_DBLCLK, IDC_LIST2, OnDblclkList2) ON_BN_CLICKED(IDC_BUTTON3, OnButton3) ON_BN_CLICKED(IDC_BUTTON4, OnButton4) ON_BN_CLICKED(IDC_BUTTON5, OnButton5) ON_BN_CLICKED(IDC_BUTTON6, OnButton6) ON_BN_CLICKED(IDC_BUTTON10, OnButton10) ON_BN_CLICKED(IDC_BUTTON11, OnButton11) ON_BN_CLICKED(IDC_BUTTON8, OnButton8) ON_BN_CLICKED(IDC_BUTTON15, OnButton15) ON_BN_CLICKED(IDC_BUTTON14, OnButton14) ON_BN_CLICKED(IDC_BUTTON19, OnButton19) ON_EN_CHANGE(IDC_EDITyear, OnChangeEDITyear) ON_BN_CLICKED(IDC_BUTTON20, OnButton20) ON_BN_CLICKED(IDC_BUTTON21, OnButton21) ON_BN_CLICKED(IDC_BUTTON24, OnButton24) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // ShowMember diagnostics #ifdef _DEBUG void ShowMember::AssertValid() const { MyFormView::AssertValid(); } void ShowMember::Dump(CDumpContext& dc) const { MyFormView::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // ShowMember message handlers void ShowMember::OnInitialUpdate() { MyFormView::OnInitialUpdate(); // TODO: Add your specialized code here and/or call the base class CMyMdi Mdi; Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this); GetDlgItem(IDC_BUTTON5)->EnableWindow(IsHasRights2new(49)); // Here we create the outbar control using the splitter as its parent // and setting its id to the first pane. CRect rc2; GetWindowRect(rc2); ::MoveWindow(m_hWnd,g_rc.left,g_rc.top,g_rc.Width(),g_rc.Height(),TRUE); EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc,0); int idarray[]={IDC_BUTTON2,IDC_BUTTON20,IDC_BUTTON21,IDC_BUTTON24,IDC_BUTclose}; int idcount=5; int btnwid; CRect prerc; for(int a=idcount-2; a>=0; a--) { GetDlgItem(idarray[a+1])->GetWindowRect (prerc); ScreenToClient(prerc); GetDlgItem(idarray[a])->GetWindowRect (rc2); ScreenToClient(rc2); btnwid=rc2.Width (); rc2.right =prerc.left ; rc2.left =rc2.right -btnwid; GetDlgItem(idarray[a])->MoveWindow (rc2); } m_static1.SetFont (&g_titlefont); if(g_bAllBranch==0) { m_List1.SetHeadings("������,100;����,100;�Ա�,100;�绰,100;����,100;���,100;��������,100;������,100;��������,100;��������,100;������ϵ,100;����,100;�ջ�����,100" ); m_List1.LoadColumnInfo (130); } else { m_List1.SetHeadings("����,100;������,100;����,100;�Ա�,100;�绰,100;����,100;���,100;��������,100;������,100;��������,100;��������,100;������ϵ,100;����,100;�ջ�����,100" ); m_List1.LoadColumnInfo (230); } m_List1.m_bSortSupport =0; m_spinyear.SetRange (1900, 3000); m_bInit=1; GetData(); } void ShowMember::FillGrid() { m_List1.DeleteAllItems2 (); int ii=0; m_List1.m_arLabels.SetSize( m_List1array.GetSize (), 1 ); int count=0; if(m_filter.IsEmpty ()) { for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++) { m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii)); } } else { int type=GetType(m_filter); if(type==2)//ƴ�� { m_filter.MakeUpper (); BOOL bFinded=0; for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++) { if(bFinded && m_List1array.ElementAt (ii).ElementAt (0+m_nAdd).IsEmpty ()) { m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii)); continue; } if(m_List1array.ElementAt (ii).ElementAt (13+m_nAdd).Find (m_filter)!=-1 ) { bFinded=1; m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii)); } else { bFinded=0; } } } else { BOOL bFinded=0; for(ii=0; ii<m_List1.m_arLabels.GetSize (); ii++) { if(bFinded && m_List1array.ElementAt (ii).ElementAt (0+m_nAdd).IsEmpty ()) { m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii)); continue; } if(m_List1array.ElementAt (ii).ElementAt (0).Find (m_filter)!=-1 ||\ m_List1array.ElementAt (ii).ElementAt (1).Find (m_filter)!=-1 || \ m_List1array.ElementAt (ii).ElementAt (2).Find (m_filter)!=-1 || \ m_List1array.ElementAt (ii).ElementAt (3).Find (m_filter)!=-1 || \ m_List1array.ElementAt (ii).ElementAt (4).Find (m_filter)!=-1|| \ m_List1array.ElementAt (ii).ElementAt (5).Find (m_filter)!=-1 || \ m_List1array.ElementAt (ii).ElementAt (6).Find (m_filter)!=-1 || \ m_List1array.ElementAt (ii).ElementAt (7).Find (m_filter)!=-1 || \ m_List1array.ElementAt (ii).ElementAt (8).Find (m_filter)!=-1 || \ m_List1array.ElementAt (ii).ElementAt (8+m_nAdd).Find (m_filter)!=-1 ) { bFinded=1; while(m_List1array.ElementAt (ii).ElementAt (0)=="") { ii--; } m_List1.m_arLabels.ElementAt (count++).Copy (m_List1array.ElementAt (ii)); } else { bFinded=0; } } } } m_List1.m_arLabels.SetSize(count, 1); ii=count; m_List1.m_LabelCount=ii; m_List1.SetItemCountEx (ii); CString str; str.Format ("��Ŀ:%d", ii); SetDlgItemText(IDC_STATIC2, str); } void ShowMember::OnBUTclose() { // TODO: Add your control notification handler code here GetParent()->SendMessage(WM_CLOSE); } void ShowMember::OnTimer(UINT nIDEvent) { // TODO: Add your message handler code here and/or call default KillTimer(nIDEvent); OnButton1(); } BOOL ShowMember::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class try { if(pMsg->message==WM_KEYDOWN) { switch (pMsg->wParam) { case VK_RETURN: InputOK(); OnButton1(); return 1; case 0x43: // copy if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) ) { GetFocus()->SendMessage(WM_COPY); return TRUE; } break; case 0x56: //Ctrl + V: if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) ) { GetFocus()->SendMessage(WM_PASTE); return TRUE; } break; case 0x58: // cut if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) ) { GetFocus()->SendMessage(WM_CUT); return TRUE; } break; case 0x5A: //undo case 0x59: //redo if ( ( GetKeyState( VK_CONTROL ) & 0x80 ) ) { GetFocus()->SendMessage(WM_UNDO); return TRUE; } break; case '0': case VK_NUMPAD0: m_no+="0"; break; case '1': case VK_NUMPAD1: m_no+="1"; break; case '2': case VK_NUMPAD2: m_no+="2"; break; case '3': case VK_NUMPAD3: m_no+="3"; break; case '4': case VK_NUMPAD4: m_no+="4"; break; case '5': case VK_NUMPAD5: m_no+="5"; break; case '6': case VK_NUMPAD6: m_no+="6"; break; case '7': case VK_NUMPAD7: m_no+="7"; break; case '8': case VK_NUMPAD8: m_no+="8"; break; case '9': case VK_NUMPAD9: m_no+="9"; break; case 187: m_no+="="; break; case VK_BACK: if(m_no.GetLength ()) { m_no.Delete (m_no.GetLength ()-1); } break; } } return MyFormView::PreTranslateMessage(pMsg); } catch(...) { } return true; } void ShowMember::OnButton1() // ��ѯ��ť; { // TODO: Add your control notification handler code here UpdateData(); m_filter.TrimLeft (); m_filter.TrimRight (); FillGrid(); } void ShowMember::OnButton2() // ���¿���ť; { // TODO: Add your control notification handler code here AddMember dlg; if(dlg.DoModal ()==IDOK) { GetData(); } } void ShowMember::OnDblclkList2(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { return; } int iItem=m_List1.GetNextSelectedItem(pos); CString branch; if(g_bAllBranch) branch=m_List1.GetItemText (iItem, 0); CString memberno=m_List1.GetItemText (iItem, 0+m_nAdd); while(memberno=="") { iItem--; memberno=m_List1.GetItemText (iItem, 0+m_nAdd); } MemberCardFunc dlg; dlg.m_branch=branch; dlg.m_memberno=memberno; dlg.DoModal(); GetData(); *pResult = 0; } void ShowMember::OnButton3() { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ��Ҫ�鿴�Ļ�Ա!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString memberno=m_List1.GetItemText (iItem, 1); ShowMemberReg dlg; dlg.m_memberno=memberno; dlg.DoModal (); } void ShowMember::OnButton4() { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ��Ҫ�鿴�Ļ�Ա!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString memberno=m_List1.GetItemText (iItem, 1); ShowMemberReg dlg; dlg.m_mode=1; dlg.m_memberno=memberno; dlg.DoModal (); if(dlg.m_bNeedRefsh==0)return; GetData(); } void ShowMember::OnButton5() { if(IsHasRights2new(49)==0)return; // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ����Ҫɾ���Ļ�Ա!"); return; } if(AfxMessageBox("ɾ�����ɻָ�, ȷ����?", MB_YESNO|MB_ICONINFORMATION)!=IDYES)return; int iItem=m_List1.GetNextSelectedItem(pos); CString m_memberno=m_List1.GetItemText (iItem, 1); CString sql; sql="delete from membermanage where [memberno]='"+m_memberno+"'"; sql+="***delete from memberreg where [memberno]='"+m_memberno+"'"; sql+="***delete from memberreg2 where [memberno]='"+m_memberno+"'"; sql+="***delete from memberreg3 where [memberno]='"+m_memberno+"'"; sql+="***delete from memberreg4 where [memberno]='"+m_memberno+"'"; sql+="***delete from membercard3usereg where [memberno]='"+m_memberno+"'"; sql+="***delete from membercard2 where [memberno]='"+m_memberno+"'"; sql+="***delete from membercard3 where [memberno]='"+m_memberno+"'"; g_sendhead.bsql=1; g_pMainWnd->ProcessChatMessageRequest2(sql);if(g_bSendOK==0)return; GetData(); } void ShowMember::OnButton6() { // TODO: Add your control notification handler code handler if(IsHasRights2new(18)==0)return; // TODO: Add your control notification code POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ����Ҫ���ֵĻ�Ա!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString m_memberno=m_List1.GetItemText (iItem, 1); CString m_name=m_List1.GetItemText (iItem, 2); CString m_sex=m_List1.GetItemText (iItem, 3); CString m_phone=m_List1.GetItemText (iItem, 4); InputCard2Point dlg; dlg.m_memberno=m_memberno; dlg.m_name=m_name; dlg.m_sex=m_sex; dlg.m_phone=m_phone; if(dlg.DoModal ()!=IDOK)return; GetData(); } void ShowMember::OnButton10() { // TODO: Add your control notification handler code here if(IsHasRights2new(18)==0)return; // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ������!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString name=m_List1.GetItemText (iItem, 2); CString no=m_List1.GetItemText (iItem, 1); InputCard2Dlg dlg; dlg.m_name =name; dlg.m_no =no; dlg.DoModal (); } void ShowMember::OnButton11() { // TODO: Add your control notification handler code here if(IsHasRights2new(18)==0)return; // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ������!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString no=m_List1.GetItemText (iItem, 1); CString filter="[memberno]='"+no+"'"; g_sendhead.bsql=0; g_sendhead.code[0]=127; g_sendhead.tabcount=1; g_pMainWnd->ProcessChatMessageRequest2(filter);if(g_bSendOK==0)return; DataToArray(&g_List1array); if(g_List1array.GetSize ()==0) { AfxMessageBox("������δ���Ÿ���!"); } else { ShowCard2Reg dlg; dlg.DoModal (); } } void ShowMember::OnButton8() { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ����Ҫ�һ����ֵĻ�Ա!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString m_memberno=m_List1.GetItemText (iItem, 1); CString m_name=m_List1.GetItemText (iItem, 2); CString m_sex=m_List1.GetItemText (iItem, 3); CString m_phone=m_List1.GetItemText (iItem, 4); UsePoint dlg; dlg.m_memberno=m_memberno; dlg.m_name=m_name; dlg.m_sex=m_sex; dlg.m_phone=m_phone; dlg.m_point =m_List1.GetItemText (iItem,9); if(dlg.DoModal ()!=IDOK)return; GetData(); } void ShowMember::OnButton15() { // TODO: Add your control notification handler code here if(IsHasRights2new(18)==0)return; // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ������!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString name=m_List1.GetItemText (iItem, 2); CString no=m_List1.GetItemText (iItem, 1); InputCard3Dlg dlg; dlg.m_name =name; dlg.m_no =no; dlg.DoModal (); } void ShowMember::OnButton14() { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ����Ҫ���ͻ��ֵĻ�Ա!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString m_memberno=m_List1.GetItemText (iItem, 1); CString m_name=m_List1.GetItemText (iItem, 2); CString m_sex=m_List1.GetItemText (iItem, 3); CString m_phone=m_List1.GetItemText (iItem, 4); UsePoint dlg; dlg.m_mode=1; dlg.m_memberno=m_memberno; dlg.m_name=m_name; dlg.m_sex=m_sex; dlg.m_phone=m_phone; dlg.m_point =m_List1.GetItemText (iItem,9); if(dlg.DoModal ()!=IDOK)return; GetData(); } void ShowMember::OnButton19() { // TODO: Add your control notification handler code here // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ����Ҫ���ͻ��ֵĻ�Ա!"); return; } int iItem=m_List1.GetNextSelectedItem(pos); CString m_memberno=m_List1.GetItemText (iItem, 1); CString m_name=m_List1.GetItemText (iItem, 2); CString m_sex=m_List1.GetItemText (iItem, 3); CString m_phone=m_List1.GetItemText (iItem, 4); UsePoint dlg; dlg.m_mode=2; dlg.m_memberno=m_memberno; dlg.m_name=m_name; dlg.m_sex=m_sex; dlg.m_phone=m_phone; dlg.m_point =m_List1.GetItemText (iItem,9); if(dlg.DoModal ()!=IDOK)return; GetData(); } void ShowMember::InputOK() { if(m_no.IsEmpty ())return; m_filter=m_no; m_no.Empty (); UpdateData(0); for(int ii=0; ii<m_List1.m_arLabels.GetSize (); ii++) { if(m_List1.m_arLabels.ElementAt (ii).ElementAt (0)==m_filter) break; if(m_List1.m_arLabels.ElementAt (ii).ElementAt (4)==m_filter) { m_List1.SetItemState(ii,LVIS_SELECTED|LVIS_FOCUSED,LVIS_SELECTED|LVIS_FOCUSED); m_List1.EnsureVisible(ii,FALSE); return; } } MemberCardFunc dlg; dlg.m_memberno=m_filter; dlg.DoModal(); GetData(); } void ShowMember::GetData() { if(!m_bInit)return; UpdateData(); if(g_bAllBranch==0) { g_sendhead.bsql=0; g_sendhead.code[0]=167; g_sendhead.tabcount=1; m_spinyear.EnableWindow(0); g_pMainWnd->ProcessChatMessageRequest2(1); if(g_bSendOK==0) { m_spinyear.EnableWindow(1); return; } m_spinyear.EnableWindow(1); DataToArray(&m_List1array); } else { m_spinyear.EnableWindow(0); //////////////���ݻ��� m_List1array.RemoveAll (); CString branch; for(int i=-1; i<g_brancharray.GetSize ()-1; i++) { if(i!=-1) { branch=g_brancharray.ElementAt (i).ElementAt (0); g_branchip=g_brancharray.ElementAt (i).ElementAt (1); g_pMainWnd->OnDisconnect(); g_branchname=branch; g_bBranchModify=1; } else branch=g_brancharray.ElementAt (g_brancharray.GetSize ()-1).ElementAt (0); g_sendhead.bsql=0; g_sendhead.code[0]=167; g_sendhead.tabcount=1; g_pMainWnd->ProcessChatMessageRequest2(1);if(g_bSendOK==0)continue; CArray<CStringArray, CStringArray>List1array; DataToArray(&List1array); int size=m_List1array.GetSize (); for(int j=0; j<List1array.GetSize (); j++) { size++; m_List1array.SetSize(size , 1 ); size--; m_List1array.ElementAt (size).Copy (List1array.ElementAt (j)); m_List1array.ElementAt (size).InsertAt (0, branch); size++; } } g_pMainWnd->OnDisconnect(); g_bBranchModify=0;g_branchip=g_branchname=""; m_spinyear.EnableWindow(1); } HidePrice(); FillGrid(); } void ShowMember::OnChangeEDITyear() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the MyFormView::OnInitDialog() // function and call CRichEditCtrl().SetEventMask() // with the ENM_CHANGE flag ORed into the mask. GetData(); // TODO: Add your control notification handler code here } void ShowMember::OnButton20() // ���Ͷ��Ű�ť; { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("����ѡ����Ҫ���Ͷ��ŵĻ�Ա!", MB_ICONINFORMATION); return; } int iItem; CStringArray array; while (pos) { iItem = m_List1.GetNextSelectedItem(pos); if(!m_List1.GetItemText (iItem, 3+m_nAdd).IsEmpty ()) array.Add (m_List1.GetItemText (iItem, 3+m_nAdd)); } SendMsgDlg dlg; dlg.m_mode=1; dlg.m_pArray=&array; dlg.DoModal (); } BOOL ShowMember::CheckExist(CString no) { for(int i=0; i<m_List1array.GetSize (); i++) { if(m_List1array.ElementAt (i).ElementAt (0)==no)return 1; } return 0; } void ConvertDate(CString &date) { date.Replace (".", "-"); date.Replace ("/", "-"); CString str=date; int pos=str.Find ("-"); if(pos==-1)return; int year=atoi(str.Left (pos)); str=str.Right (str.GetLength ()-pos-1); pos=str.Find ("-"); if(pos==-1)return; int month=atoi(str.Left (pos)); str=str.Right (str.GetLength ()-pos-1); int day=atoi(str); date.Format ("%d-%02d-%02d", year, month, day); } extern void CheckDate(CString &date); void ShowMember::OnButton21() // ���밴ť; { if(IsHasRights2new(18)==0)return; using namespace YExcel; BasicExcel e; CFileDialog fdlg(true, NULL,"", OFN_HIDEREADONLY, "Excel files(*.xls)|*.xls||"); if(fdlg.DoModal ()!=IDOK)return; CString path=fdlg.GetPathName(); e.Load(path); BasicExcelWorksheet* sheet1 = e.GetWorksheet("Sheet1"); if (sheet1) { size_t maxRows = sheet1->GetTotalRows(); size_t maxCols = sheet1->GetTotalCols(); if(maxCols>7)maxCols=7; if(maxCols<7) { AfxMessageBox("��ʽ����:ȱ����Ŀ!");return; } if(maxRows<2) { AfxMessageBox("û������!");return; } CStringArray array; for (size_t r=0; r<maxRows; ++r) { for (size_t c=0; c<maxCols; ++c) { BasicExcelCell* cell = sheet1->Cell(r,c); switch (cell->Type()) { case BasicExcelCell::STRING: array.Add(cell->GetString()); break; case BasicExcelCell::WSTRING: { int leng = wcslen(cell->GetWString()); char* ppszA=new char[2*leng+1]; memset(ppszA, 0, 2*leng+1); WideCharToMultiByte(CP_ACP,0,cell->GetWString(),-1,ppszA,leng*2,NULL,NULL); CString str=ppszA; str.TrimLeft();str.TrimRight(); array.Add (str); delete []ppszA; } break; default: array.Add (""); } } if(r==0) { if(array.GetSize ()!=maxCols) { AfxMessageBox("���϶�ȡ����");return; } if(array.ElementAt (0)!="��Ա����") { AfxMessageBox("��ʽ����2");return; } array.RemoveAll (); } } /////////////////////// CString sql,temp; CString m_name,strRes1; CString m_memberno,m_sex,m_date,m_phone,m_qq,m_birthday,m_point; int count=0; CStringArray noarray; for(int i=0; i<array.GetSize (); i+=7) { m_memberno=array.ElementAt (i+0); m_name=array.ElementAt (i+1); m_sex=array.ElementAt (i+2); m_phone=array.ElementAt (i+3); m_qq=array.ElementAt (i+4); m_birthday=array.ElementAt (i+5); m_point=array.ElementAt (i+6); ConvertDate(m_birthday); CheckDate(m_birthday); ChinesePinYin::GetFirstLetter(m_name, strRes1); if(m_name.IsEmpty () || m_memberno=="")continue; if(CheckExist(m_memberno))continue; if(::FindArray(&noarray, m_memberno)!=-1)continue; noarray.Add(m_memberno); temp.Format ("insert into [membermanage]([memberno],[name],[sex],[phone],[qq],[birthday],[date],[pinyin],[money])values('%s','%s','%s','%s','%s','%s','%s','%s','%s')",m_memberno,m_name,m_sex,m_phone,m_qq,m_birthday,g_date,strRes1,m_point); sql+=temp; sql+="***"; temp="insert into memberreg([memberno],[dindanid],[money],[date],[type])values('"+m_memberno+"','�����ʼ����','"+m_point+"','"+g_date+"','���ѻ���')"; sql+=temp; sql+="***"; count++; if(count==5) { sql.TrimRight ("***"); g_sendhead.bsql=1; g_pMainWnd->ProcessChatMessageRequest2(sql); if(g_bSendOK==0) { AfxMessageBox("��������г��ִ���!"); return; } sql.Empty ();count=0;GetData(); } ::Sleep(1000); } ///////////////////////////////////// if(!sql.IsEmpty ()) { sql.TrimRight ("***"); g_sendhead.bsql=1; g_pMainWnd->ProcessChatMessageRequest2(sql); if(g_bSendOK==0) { AfxMessageBox("��������г��ִ���!"); return; } sql.Empty ();count=0;GetData(); } AfxMessageBox("����ɹ�!"); /////////////////////// } else AfxMessageBox("��ʽ�����ļ�δ�ر�!!"); } void ShowMember::OnButton24() // ������ť; { // TODO: Add your control notification handler code here if(IsHasRights2new(18)==0)return; ListToXLS(&m_List1, "c:\\��Ա����.xls", 0); } void ShowMember::HidePrice() { #ifdef LKAY_VERSION if(IsHasRights2new(31))return; for(int i=0; i< m_List1array.GetSize (); i++) { m_List1array.ElementAt (i).SetAt (3, "***"); } #endif }