void CDlg::OnShowEdit(void) { COleVariant vC; short i; CString strC; if(IsEnableRec(ptrRs1)){ if(!ptrRs1->adoEOF){ try{ i = 1; //Сокр наим vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit1 = vC.bstrVal; m_Edit1.TrimLeft(); m_Edit1.TrimRight(); GetDlgItem(IDC_EDIT1)->SetWindowText(m_Edit1); i = 2; //Полн Наименование vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit2 = vC.bstrVal; m_Edit2.TrimLeft(); m_Edit2.TrimRight(); GetDlgItem(IDC_EDIT2)->SetWindowText(m_Edit2); } catch(_com_error& e){ AfxMessageBox(e.Description()); } } } }
void CDlg::OnShowEdit(void) { COleVariant vC; short i; CString strC; if(ptrRs1->State==adStateOpen){ if(!IsEmptyRec(ptrRs1)){ i = 1; //Сокр наимен vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit1 = vC.bstrVal; m_Edit1.TrimLeft(); m_Edit1.TrimRight(); GetDlgItem(IDC_EDIT1)->SetWindowText(m_Edit1); i = 2; //Наименование vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit2 = vC.bstrVal; m_Edit2.TrimLeft(); m_Edit2.TrimRight(); GetDlgItem(IDC_EDIT2)->SetWindowText(m_Edit2); } } }
void CDlg::OnShowEdit(void) { COleVariant vC; short i; CString strC; if(ptrRs1->State==adStateOpen){ if(!IsEmptyRec(ptrRs1)){ i = 1; //Наименовнаие документа vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit1 = vC.bstrVal; m_Edit1.TrimLeft(); m_Edit1.TrimRight(); GetDlgItem(IDC_EDIT1)->SetWindowText(m_Edit1); i = 2; //Признак серии vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BOOL); m_Check1 = vC.boolVal; ((CButton*)GetDlgItem(IDC_CHECK1))->SetCheck(m_Check1); i = 3; //Признак # vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BOOL); m_Check2 = vC.boolVal; ((CButton*)GetDlgItem(IDC_CHECK2))->SetCheck(m_Check2); i = 4; //Признак даты vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BOOL); m_Check3 = vC.boolVal; ((CButton*)GetDlgItem(IDC_CHECK3))->SetCheck(m_Check3); } } }
void CDlg::OnBnClickedButton5() { //Товар-склад COleVariant vC; short i; BeginWaitCursor(); HMODULE hMod; BOOL bFndC; CString strFndC; bFndC = FALSE; strFndC = _T(""); if(IsEnableRec(ptrRs1)){ i = 0; vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strFndC = vC.bstrVal; strFndC.TrimLeft(); strFndC.TrimRight(); bFndC = TRUE; } hMod=AfxLoadLibrary(_T("OrdStrg.dll")); typedef BOOL (*pDialog)(CString,_ConnectionPtr,CString,BOOL); pDialog func=(pDialog)GetProcAddress(hMod,"startOrdStrg"); (func)(m_strNT, ptrCnn,strFndC,bFndC); // m_SlpDay.SetDate(t1); AfxFreeLibrary(hMod); EndWaitCursor(); }
void CDlg::On32777(void) { //Удалить COleVariant vC,vBk; CString strSql,strC; _variant_t vra; VARIANT* vtl = NULL; short i; if(ptrRs1->State==adStateOpen){ if(!IsEmptyRec(ptrRs1)){ ptrRs1->get_Bookmark(vBk); i = 0; //Код vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strC = vC.bstrVal; strC.TrimRight(); strC.TrimLeft(); strSql = _T("DT45 "); strSql+= strC; ptrCmd1->CommandType = adCmdText; ptrCmd1->CommandText = (_bstr_t)strSql; try{ ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e){ AfxMessageBox(e.Description()); } ptrCmd1->CommandText = _T("QT45"); try{ ptrRs1->Requery(adCmdText); m_DataGrid1.Refresh(); try{ m_Flg = false; ptrRs1->PutBookmark(vBk); m_Flg = true; InitDataGrid1(); } catch(...){ if(!IsEmptyRec(ptrRs1)){ ptrRs1->MoveLast(); InitDataGrid1(); } else{ m_DataGrid1.putref_DataSource(NULL); } } } catch(_com_error& e){ AfxMessageBox(e.Description()); } } } return; }
void CDlg::OnBnClickedButton1() { BeginWaitCursor(); // m_SlpDay.SetDate(t1); HMODULE hMod; BOOL bFndC; CString strFndC,strIns; COleVariant vC; short i; bFndC = TRUE; strFndC = _T(""); if(IsEnableRec(ptrRsCmb1)){ i = 0; vC = GetValueRec(ptrRsCmb1,i); vC.ChangeType(VT_BSTR); strFndC = vC.bstrVal; strFndC.TrimLeft(); strFndC.TrimRight(); } hMod=AfxLoadLibrary(_T("NameUnit.dll")); typedef BOOL (*pDialog)(CString,_ConnectionPtr,CString&,BOOL); pDialog func=(pDialog)GetProcAddress(hMod,"startNameUnit"); (func)(m_strNT, ptrCnn,strFndC,bFndC); // m_SlpDay.SetDate(t1); AfxFreeLibrary(hMod); try{ ptrRsCmb1->Requery(adCmdText); m_DataCombo1.Refresh(); OnFindInCombo(strFndC,&m_DataCombo1,ptrRsCmb1,0,1); i = 1; vC = GetValueRec(ptrRsCmb1,i); vC.ChangeType(VT_BSTR); strIns = vC.bstrVal; m_DataCombo1.put_BoundText(strIns); } catch(_com_error& e){ AfxMessageBox(e.Description()); } EndWaitCursor(); }
void CDlg::ButtonClickDatagrid4(short ColIndex) { COleVariant vC,vBk; short i; if(IsEnableRec(ptrRs4)) { vBk = ptrRs4->GetBookmark(); switch(ColIndex) { case 1: { BOOL bFndC; CString strFndC; bFndC = TRUE; strFndC = _T(""); i=0; vC = GetValueRec(ptrRs4,i); vC.ChangeType(VT_BSTR); strFndC=vC.bstrVal; strFndC.TrimLeft(); strFndC.TrimRight(); BeginWaitCursor(); // m_SlpDay.SetDate(t1); HMODULE hMod; hMod=AfxLoadLibrary(L"Stg.dll"); typedef BOOL (*pDialog)(CString,_ConnectionPtr,CString,BOOL); pDialog func=(pDialog)GetProcAddress(hMod,"startStg"); (func)(m_strNT, ptrCnn,strFndC,bFndC); // m_SlpDay.SetDate(t1); AfxFreeLibrary(hMod); EndWaitCursor(); } break; } try { ptrRs4->Requery(adCmdText);//adCmdStoredProc m_DataGrid4.Refresh(); InitDataGrid4(m_DataGrid4,ptrRs4); if(!IsEmptyRec(ptrRs4)) { try { ptrRs4->PutBookmark(vBk); } catch(...) { ptrRs4->MoveLast(); } } } catch(_com_error& e) { AfxMessageBox(e.ErrorMessage()); } } }
void CDlg::On32776(void) { // Изменить // UpdateData(); CString strSql,strC; _variant_t vra; COleVariant vC; VARIANT* vtl = NULL; short IndCol,i; if(ptrRs1->State==adStateOpen){ if(!IsEmptyRec(ptrRs1)){ i = 0; //Код vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strC = vC.bstrVal; strC.TrimRight(); strC.TrimRight(); if(OnOverEdit(IDC_EDIT1,IDC_EDIT2)){ strSql = _T("UT9 "); strSql+= strC + _T(",'"); strSql+= m_Edit1 + _T("','"); strSql+= m_Edit2 + _T("','"); strSql+= m_strNT + _T("'"); ptrCmd1->CommandText = (_bstr_t)strSql; ptrCmd1->CommandType = adCmdText; try{ // AfxMessageBox(strSql); ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e){ AfxMessageBox(e.Description()); } strSql = _T("QT9"); OnShowGrid(strSql, ptrRs1,ptrCmd1,m_DataGrid1,InitDataGrid1); if(ptrRs1->State==adStateOpen){ if(!IsEmptyRec(ptrRs1)){ if(!m_Edit1.IsEmpty()){ IndCol = 0; m_Flg = false; OnFindInGrid(strC,ptrRs1,IndCol,m_Flg); m_Flg = true; } } } } } } return; }
void CDlg::OnClickedCancel() { if(m_bFndC){ if(IsEnableRec(ptrRs1)){ COleVariant vC; short i; i = 0; vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_strFndC = vC.bstrVal; m_strFndC.TrimLeft(); m_strFndC.TrimLeft(); } } OnCancel(); }
void CDlg::On32777(void) { //Удалить COleVariant vC,vBk; CString strSql,strC; _variant_t vra; VARIANT* vtl = NULL; short i; if(IsEnableRec(ptrRs1)){ ptrRs1->get_Bookmark(vBk); i = 0; //Код vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strC = vC.bstrVal; strC.TrimRight(); strC.TrimLeft(); strSql = _T("DT34 "); strSql+= strC; ptrCmd1->CommandType = adCmdText; ptrCmd1->CommandText = (_bstr_t)strSql; try{ ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e){ AfxMessageBox(e.Description()); } strSql = _T("QT34"); OnShowGrid(strSql, ptrRs1,ptrCmd1,m_DataGrid1,InitDataGrid1); if(IsEnableRec(ptrRs1)){ try{ m_Flg = false; ptrRs1->PutBookmark(vBk); m_Flg = true; } catch(...){ ptrRs1->MoveLast(); } } } return; }
void CDlg::SetTextCombo(CDatacombo2& Cmb, _RecordsetPtr pRs, short iTxt) { if(IsEnableRec(pRs)){ if(!pRs->adoEOF){ COleVariant vC; CString strIns; vC = GetValueRec(pRs,iTxt); vC.ChangeType(VT_BSTR); strIns = vC.bstrVal; strIns.TrimLeft(); strIns.TrimRight(); Cmb.put_BoundText(strIns); } } else{ Cmb.put_BoundText(_T("")); } }
void CDlg::OnShowAddres(void) { COleVariant vC; CString strC,strSql; short i;//,IndCol; if(IsEnableRec(ptrRs1)){ if(!ptrRs1->adoEOF){ i=0; vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strC=vC.bstrVal; strSql = _T("QT49 "); strSql+= strC; OnShowGrid(strSql, ptrRs2, ptrCmd2, m_DataGrid2, InitDataGrid2); } } }
void CDlg::OnBnClickedButton1() { //Добавить Адрес BeginWaitCursor(); CString strCod,strIns; COleVariant vC; strCod = _T("0"); strIns = _T("IT49 "); short i=0; if(ptrRs1->State==adStateOpen){ if(!IsEmptyRec(ptrRs1)){ vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strCod=vC.bstrVal; strCod.TrimLeft(' '); strCod.TrimRight(' '); // m_SlpDay.SetDate(t1); HMODULE hMod; hMod=AfxLoadLibrary(_T("AddBk.dll")); typedef BOOL (*pDialog)( CString, _ConnectionPtr,CString,CString ); pDialog func=(pDialog)GetProcAddress(hMod,"startAddBk"); if((func)(m_strNT, ptrCnn,strCod,strIns)){ if(m_iBtSt==5){ if(ptrRs2->State==adStateOpen){ // ptrRs2->Requery(adCmdText); // InitDataGrid2(m_DataGrid2,ptrRs2); // else{ OnShowAddres(); } } } // m_SlpDay.SetDate(t1); AfxFreeLibrary(hMod); } } EndWaitCursor(); }
void CDlg::OnBnClickedButton2() { //Удалить адрес if(m_iBtSt == 5){ if(IDYES==AfxMessageBox(IDS_STRING9021,MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2)){ COleVariant vC,vBk; CString strC,strSql; _variant_t vra; VARIANT* vtl = NULL; short i = 0; if(IsEnableRec(ptrRs2)){ if(!ptrRs2->adoEOF){ vBk = ptrRs2->Bookmark; vC=GetValueRec(ptrRs2,i); vC.ChangeType(VT_BSTR); strC=vC.bstrVal; strSql = _T("DT49 "); strSql+=strC; //AfxMessageBox(strSql); ptrCmd2->CommandText = (_bstr_t)strSql; ptrCmd2->CommandType = adCmdText; try{ // AfxMessageBox(strSql); ptrCmd2->Execute(&vra,vtl,adCmdText); } catch(_com_error& e){ AfxMessageBox(e.Description()); } OnShowAddres(); } } } } else{ CString msg; msg.LoadString(IDS_STRING9023); AfxMessageBox(msg,MB_ICONINFORMATION); } }
void CDlg::RowColChangeDatagrid3(VARIANT* LastRow, short LastCol) { if(m_Flg) { //AfxMessageBox(L"RW3 m_Flg=TRUE"); if(IsEnableRec(ptrRs3)) { /* CString s; s.Format(L"m_Radio1 = %i",m_Radio1); */ switch(m_Radio1) { case 0: if(!ptrRs3->adoEOF) { //AfxMessageBox(L"case RW3 и !ptrRs3->adoEOF "+s); CString strSql,strC,s; COleVariant vC; short i; s = m_Radio1==0 ? _T("0"):_T("1"); i = 0; vC = GetValueRec(ptrRs3,i); vC.ChangeType(VT_BSTR); strC = vC.bstrVal; strC.TrimLeft(); strC.TrimRight(); strSql = _T("T27_T26 "); strSql+= s + _T(","); strSql+= strC; // AfxMessageBox(L"RW3 B OnShow G2 группа"); // m_Flg = false; OnShowGrid(strSql, ptrRs2,ptrCmd2,m_DataGrid2,InitDataGrid2); // AfxMessageBox(L"RW3 E OnShow G2 группа"); // m_Flg = false; } break; } } } m_Flg = true; }
void SetValueRec ( unsigned long key, const unsigned char *control, short clength, short ctype, const unsigned char *values) { long cmask; struct ValueListEntry *p; ValuePtr value; int i; value = GetValueRec (key); if (!value) return; /* first get the control mask */ if (clength == 1) cmask = IByte(control); else if (clength == 2) cmask = IShort(control); else cmask = ILong(control); /* now if it is zero, ignore and return */ if (cmask == 0) return; /* there are bits in the controlling bitmask, figure out which */ /* the ctype is a set type, so this code is similar to PrintSET */ for (p = TD[ctype].ValueList, i = 0; p != NULL; p = p->Next, i++) { if ((p->Value & cmask) != 0) { memcpy (&value->values[i], values, sizeof (unsigned long)); values += 4; } } }
void CDlg::On32777(void) { //Удалить COleVariant vC,vBk; CString strSql,strR,strC1,strCG; _variant_t vra; VARIANT* vtl = NULL; short i; strCG = _T("0"); strC1 = _T("0"); if(IsEnableRec(ptrRs1)) { ptrRs1->get_Bookmark(vBk); switch(m_Radio1) { case 0: //по Товару i=0; //Код записи в Т99 vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strC1=vC.bstrVal; strC1.TrimLeft(); strC1.TrimRight(); break; case 1: //по Группе i=6; //Код Группы vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strCG=vC.bstrVal; strCG.TrimLeft(); strCG.TrimRight(); break; } strR = m_Radio1==0 ? _T("0"):_T("1"); strSql = _T("DT99_1 "); strSql+= strR + _T(","); strSql+= strC1 + _T(","); strSql+= strCG; ptrCmd1->CommandType = adCmdText; ptrCmd1->CommandText = (_bstr_t)strSql; try { ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e) { AfxMessageBox(e.Description()); } strSql = _T("QT99"); OnShowGrid(strSql, ptrRs1,ptrCmd1,m_DataGrid1,InitDataGrid1); if(IsEnableRec(ptrRs1)) { try { m_Flg = false; ptrRs1->PutBookmark(vBk); m_Flg = true; } catch(...) { if(ptrRs1->adoEOF) ptrRs1->MoveLast(); } } } return; }
void CDlg::On32776(void) { // Изменить // UpdateData(); CString strSql,strCS,strCSN,strCT,strCG; CString strR; COleVariant vC,vBk; _variant_t vra; VARIANT* vtl = NULL; short IndCol; strCT = _T("0"); strCG = _T("0"); strCS = _T("0"); strCSN = _T("0"); short i,InnCol; i = 0; if(IsEnableRec(ptrRs1)) { if(OnOverEdit(IDC_DATAGRID2,IDC_DATAGRID3)) { switch(m_Radio1) { case 0: // по Товару i=7; // Код Товара vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strCT=vC.bstrVal; break; case 1: // по Группе i=6; // Код Группы vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strCG=vC.bstrVal; break; } vBk = ptrRs1->GetBookmark(); i = 8; //Код Склада стар vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strCS = vC.bstrVal; strCS.TrimLeft(); strCS.TrimRight(); i = 0; //Код Склада Новый vC = GetValueRec(ptrRs4,i); vC.ChangeType(VT_BSTR); strCSN = vC.bstrVal; strCSN.TrimLeft(); strCSN.TrimRight(); strR = m_Radio1==0 ? _T("0"):_T("1"); strSql = _T("UT99 "); strSql+= strR + _T(","); strSql+= strCT + _T(","); // Код товара strSql+= strCG + _T(","); // Код группы strSql+= strCS + _T(","); // Код стар склад strSql+= strCSN + _T(",'"); // Код нового склад strSql+= m_strNT+ _T("'"); ptrCmd1->CommandText = (_bstr_t)strSql; ptrCmd1->CommandType = adCmdText; try { // AfxMessageBox(strSql); ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e) { AfxMessageBox(e.Description()); } strSql = _T("QT99"); OnShowGrid(strSql, ptrRs1,ptrCmd1,m_DataGrid1,InitDataGrid1); if(IsEnableRec(ptrRs1)) { switch(m_Radio1) { case 0: IndCol = 7; m_Flg = false; m_bFnd = OnFindInGrid(strCT,ptrRs1,IndCol,m_Flg); m_Flg = true; break; case 1: IndCol = 6; m_Flg = false; m_bFnd = OnFindInGrid(strCG,ptrRs1,IndCol,m_Flg); m_Flg = true; break; } } } } return; }
void CDlg::On32775(void) { //Добавить // UpdateData(); CString strSql; CString strCT,strCG,strCS,strR; COleVariant vC; _variant_t vra; VARIANT* vtl = NULL; short IndCol; short i; strCT = _T("0"); strCG = _T("0"); strCS = _T("0"); strR = m_Radio1==0 ? _T("0"):_T("1"); if(m_iBtSt==5) { AfxMessageBox(IDS_STRING9011,MB_ICONINFORMATION); return; } if(OnOverEdit(IDC_DATAGRID1,IDC_DATAGRID4)) { switch(m_Radio1) { case 0: //по Товару i = 0; vC = GetValueRec(ptrRs3,i); vC.ChangeType(VT_BSTR); strCT = vC.bstrVal; strCT.TrimLeft(); strCT.TrimRight(); break; case 1: //по Группе i = 0; vC = GetValueRec(ptrRs2,i); vC.ChangeType(VT_BSTR); strCG = vC.bstrVal; strCG.TrimLeft(); strCG.TrimRight(); break; } i = 0; // Склад vC = GetValueRec(ptrRs4,i); vC.ChangeType(VT_BSTR); strCS = vC.bstrVal; strCS.TrimLeft(); strCS.TrimRight(); strSql = _T("IT99_1 "); strSql+= strR + _T(","); strSql+= strCT + _T(","); //Код Товара strSql+= strCG + _T(","); //Код Группы strSql+= strCS + _T(",'"); //Код Склада strSql+= m_strNT+ _T("'"); ptrCmd1->CommandText = (_bstr_t)strSql; ptrCmd1->CommandType = adCmdText; try { // AfxMessageBox(strSql); ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e) { AfxMessageBox(e.Description()); } strSql = _T("QT99"); OnShowGrid(strSql, ptrRs1,ptrCmd1,m_DataGrid1,InitDataGrid1); if(IsEnableRec(ptrRs1)) { switch(m_Radio1) { case 0: IndCol = 7; //по Товару m_Flg = false; OnFindInGrid(strCT,ptrRs1,IndCol,m_Flg); m_Flg = true; break; case 1: IndCol = 6; //по Группе m_Flg = false; OnFindInGrid(strCG,ptrRs1,IndCol,m_Flg); m_Flg = true; break; } } } return; }
void CDlg::On32776(void) { // Изменить UpdateData(); CString strSql,strC,strCh1,strCh2,strCh3; _variant_t vra; COleVariant vC; VARIANT* vtl = NULL; short IndCol,i; m_Edit1.TrimRight(' '); m_Edit1.TrimLeft(' '); if(m_Edit1==' ') m_Edit1.Empty(); if(m_Check1){ strCh1 = _T("1"); } else{ strCh1 = _T("0"); } if(m_Check2){ strCh2 = _T("1"); } else{ strCh2 = _T("0"); } if(m_Check3){ strCh3 = _T("1"); } else{ strCh3 = _T("0"); } if(ptrRs1->State==adStateOpen){ if(!IsEmptyRec(ptrRs1)){ i = 0; //Код vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strC = vC.bstrVal; strC.TrimRight(); strC.TrimRight(); if(OnOverEdit(IDC_EDIT1,IDC_EDIT1)){ strSql = _T("UT45 "); strSql+= strC +_T(",'"); strSql+= m_Edit1 + _T("',"); strSql+=strCh1 + _T(","); strSql+=strCh2 + _T(","); strSql+=strCh3 + _T(",'"); strSql+=m_strNT+_T("'"); ptrCmd1->CommandText = (_bstr_t)strSql; ptrCmd1->CommandType = adCmdText; try{ // AfxMessageBox(strSql); ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e){ AfxMessageBox(e.Description()); } ptrCmd1->CommandText = _T("QT45"); try{ ptrRs1->Requery(adCmdText); m_DataGrid1.Refresh(); // InitDataGrid1(); if(!m_Edit1.IsEmpty()){ IndCol = 0; m_Flg = false; OnFindInGrid(strC,ptrRs1,IndCol,m_Flg); m_Flg = true; } } catch(_com_error& e){ AfxMessageBox(e.Description()); } InitDataGrid1(); } } } return; }
CString CRecSetProc::GetStrRs(_RecordsetPtr rs, int i, int iRec, int& i8,double& d6) { COleVariant vC; COleCurrency vCY; CString str,s; double dT; int iT=0; /* s.Format(" i = %i",i); AfxMessageBox(s); */ str = _T(""); switch(i){ case 1: str.Format("%i",iRec); break; case 2: // Артикул vC = GetValueRec(rs,1); vC.ChangeType(VT_BSTR); str = vC.bstrVal; break; case 3: // Наименование vC = GetValueRec(rs,2); vC.ChangeType(VT_BSTR); str = vC.bstrVal; break; case 4: // Кол-во vC = GetValueRec(rs,3); vC.ChangeType(VT_I4); iT = vC.lVal; i8+=iT; str.Format("%i",iT); break; case 5: // Цена vC = GetValueRec(rs,4); vC.ChangeType(VT_R8); dT = vC.dblVal; // str = vC.bstrVal; // vCY.SetCurrency(dT,4); str.Format("%16.4f",dT); // str = vCY.Format(0, MAKELCID(MAKELANGID(LANG_RUSSIAN, // SUBLANG_SYS_DEFAULT), SORT_DEFAULT)); break; case 6: // Суммы vC = GetValueRec(rs,5); vC.ChangeType(VT_R8); dT = vC.dblVal; d6 +=dT; str.Format("%16.4f",dT); break; case 7: // % НДС vC = GetValueRec(rs,6); vC.ChangeType(VT_BSTR); str = vC.bstrVal; break; } str.TrimRight(); str.TrimLeft(); return str; }
void CDlg::On32776(void) { // Изменить UpdateData(); CString strSql,strC; CString strC5,strC7,strC9,strC15; _variant_t vra; COleVariant vC; VARIANT* vtl = NULL; short IndCol,i; if(IsEnableRec(ptrRs1)){ if(!ptrRs1->adoEOF){ i = 0; //Код vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strC = vC.bstrVal; strC.TrimRight(); strC.TrimRight(); if(OnOverEdit(IDC_EDIT1,IDC_EDIT8)){ if(IsEnableRec(ptrRs2)){ i = 0; vC = GetValueRec(ptrRs2,i); //Код страны vC.ChangeType(VT_BSTR); strC5 = vC.bstrVal; strC5.TrimRight(); } if(IsEnableRec(ptrRsCmb1)){ i = 0; vC = GetValueRec(ptrRsCmb1,i); //Вид шт vC.ChangeType(VT_BSTR); strC7 = vC.bstrVal; strC7.TrimLeft(); } if(IsEnableRec(ptrRsCmb2)){ i = 0; vC = GetValueRec(ptrRsCmb2,i); //Ед.измер. vC.ChangeType(VT_BSTR); strC9 = vC.bstrVal; strC9.TrimLeft(' '); } if(IsEnableRec(ptrRs3)){ i = 0; vC = GetValueRec(ptrRs2,i); //Код классификатора vC.ChangeType(VT_BSTR); strC15 = vC.bstrVal; strC15.TrimRight(); strC15.TrimLeft(); } strSql = _T("UT12_1 "); strSql+= strC +_T(",'"); strSql+= m_Edit1 + _T("','"); //Арт вн strSql+= m_Edit4 + _T("','"); //Полн. наим. strSql+= m_Edit2 + _T("',"); //Арт пост strSql+= strC5 + _T(",'"); //Код Страны strSql+= _T("0',"); //ГТД strSql+= strC7 + _T(","); //Код вида шт. strSql+= m_Edit6 + _T(","); //Числ. выр. шт. strSql+= strC9 + _T(","); //Код Ед. изм. strSql+= m_Edit7 + _T(","); //Масса шт. strSql+= m_Edit8 + _T(","); //V куб.м strSql+= m_Edit3 + _T(","); //Штрих код strSql+= (m_Check1 ? _T("1"):_T("0")); //Спиртосодер. strSql+= _T(","); strSql+= m_Edit5 + _T(","); //V спирта strSql+= strC15 + _T(",'"); //Код классификатора strSql+= m_strNT + _T("'"); ptrCmd1->CommandText = (_bstr_t)strSql; ptrCmd1->CommandType = adCmdText; try{ // AfxMessageBox(strSql); ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e){ AfxMessageBox(e.Description()); } strSql = _T("QT12_1"); OnShowGrid(strSql, ptrRs1,ptrCmd1,m_DataGrid1,InitDataGrid1); if(IsEnableRec(ptrRs1)){ if(!m_Edit1.IsEmpty()){ IndCol = 0; m_Flg = false; OnFindInGrid(strC,ptrRs1,IndCol,m_Flg); m_Flg = true; } } } } } return; }
void CDlg::On32775(void) { //Добавить UpdateData(); CString strSql; CString strC5,strC7,strC9,strC15; _variant_t vra; VARIANT* vtl = NULL; COleVariant vC; short i,IndCol; if(m_iBtSt==5){ AfxMessageBox(IDS_STRING9011,MB_ICONINFORMATION); return; } if(OnOverEdit(IDC_EDIT1,IDC_EDIT8)){ if(IsEnableRec(ptrRs2)){ i = 0; vC = GetValueRec(ptrRs2,i); //Код страны vC.ChangeType(VT_BSTR); strC5 = vC.bstrVal; strC5.TrimRight(); strC5.TrimLeft(); } if(IsEnableRec(ptrRsCmb1)){ i = 0; vC = GetValueRec(ptrRsCmb1,i); //Вид шт vC.ChangeType(VT_BSTR); strC7 = vC.bstrVal; strC7.TrimLeft(); strC7.TrimRight(); } if(IsEnableRec(ptrRsCmb2)){ i = 0; vC = GetValueRec(ptrRsCmb2,i); //Ед.измер. vC.ChangeType(VT_BSTR); strC9 = vC.bstrVal; strC9.TrimLeft(); strC9.TrimRight(); } if(IsEnableRec(ptrRs3)){ i = 0; vC = GetValueRec(ptrRs2,i); //Код классификатора vC.ChangeType(VT_BSTR); strC15 = vC.bstrVal; strC15.TrimRight(); strC15.TrimLeft(); } strSql =_T("IT12_1 '"); strSql+= m_Edit1+_T("','"); /*Арт вн*/ strSql+= m_Edit4+_T("','"); /*Полн наим*/ strSql+= m_Edit2 + _T("',"); /*Арт п*/ strSql+= strC5 + _T(",'"); /*Код стр*/ strSql+= _T("0',"); /*ГТД*/ strSql+= strC7 + _T(","); /*Код шт*/ strSql+= m_Edit6 + _T(","); /*Числ-ое выр.шт.*/ strSql+= strC9 + _T(","); /*Код ед.измер.*/ strSql+= m_Edit7 + _T(","); /*Масса*/ strSql+= m_Edit8 + _T(","); /*V*/ strSql+= m_Edit3 + _T(","); /*Штрих Код*/ strSql+= (m_Check1 ? _T("1"):_T("0")); /*Спиртосод Есть/Нет (1/0)*/ strSql+= _T(","); strSql+= m_Edit5 + _T(","); /*V спирта (л)*/ strSql+= strC15 + _T(",'"); /*Код классификатора*/ strSql+= m_strNT + _T("'"); ptrCmd1->CommandText = (_bstr_t)strSql; ptrCmd1->CommandType = adCmdText; try{ // AfxMessageBox(strSql); ptrCmd1->Execute(&vra,vtl,adCmdText); } catch(_com_error& e){ AfxMessageBox(e.Description()); } strSql = _T("QT12_1"); OnShowGrid(strSql, ptrRs1,ptrCmd1,m_DataGrid1,InitDataGrid1); if(IsEnableRec(ptrRs1)){ if(!m_Edit1.IsEmpty()){ IndCol = 1; m_Flg = false; OnFindInGrid(m_Edit1,ptrRs1,IndCol,m_Flg); m_Flg = true; } } } return; }
void CDlg::OnShowEdit(void) { COleVariant vC; short i,IndCol; CString strF; if(IsEnableRec(ptrRs1)){ if(!ptrRs1->adoEOF){ i = 1; //Арт. внут vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit1 = vC.bstrVal; m_Edit1.TrimLeft(); m_Edit1.TrimRight(); GetDlgItem(IDC_EDIT1)->SetWindowText(m_Edit1); i=2; //Полн. наим. vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit4 = vC.bstrVal; m_Edit4.TrimLeft(); m_Edit4.TrimRight(); GetDlgItem(IDC_EDIT4)->SetWindowText(m_Edit4); i=3; //Арт постав vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit2=vC.bstrVal; m_Edit2.TrimLeft(); m_Edit2.TrimRight(); GetDlgItem(IDC_EDIT2)->SetWindowText(m_Edit2); i=7; //Числ. выр. шт. vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit6=vC.bstrVal; m_Edit6.TrimLeft(); m_Edit6.TrimRight(); GetDlgItem(IDC_EDIT6)->SetWindowText(m_Edit6); i=9; // Код Страны vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strF=vC.bstrVal; IndCol = 0; m_Flg = false; //AfxMessageBox("E"); OnFindInGrid(strF,ptrRs2,IndCol,m_Flg); m_Flg = true; i=10; // Код вида штуки vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strF=vC.bstrVal; OnFindInCombo(strF,&m_DataCombo1,ptrRsCmb1,0,1); i=11; // Код Ед.измер. vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strF=vC.bstrVal; OnFindInCombo(strF,&m_DataCombo2,ptrRsCmb2,0,1); i=12; //Масса (кг) vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit7=vC.bstrVal; m_Edit7.Replace(',','.'); m_Edit7.TrimLeft(); m_Edit7.TrimRight(); GetDlgItem(IDC_EDIT7)->SetWindowText(m_Edit7); i=13; //М (куб.м) vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit8=vC.bstrVal; m_Edit8.Replace(',','.'); m_Edit8.TrimLeft(); m_Edit8.TrimRight(); GetDlgItem(IDC_EDIT8)->SetWindowText(m_Edit8); i=14; //Штрих-Код vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit3=vC.bstrVal; m_Edit3.TrimLeft(); m_Edit3.TrimRight(); GetDlgItem(IDC_EDIT3)->SetWindowText(m_Edit3); i=15; //Спиртосодерж vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BOOL); m_Check1=vC.boolVal; ((CButton*)GetDlgItem(IDC_CHECK1))->SetCheck(m_Check1); i=16; //Кол-во спирта (л) vC=GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); m_Edit5=vC.bstrVal; m_Edit5.Replace(',','.'); m_Edit5.TrimLeft(); m_Edit5.TrimRight(); GetDlgItem(IDC_EDIT5)->SetWindowText(m_Edit5); i=18; // Код классификатора vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strF=vC.bstrVal; IndCol = 0; m_Flg = false; OnFindInGrid(strF,ptrRs3,IndCol,m_Flg); m_Flg = true; } } }
BOOL CDlg::OnInitDialog() { CDialog::OnInitDialog(); hInstResClnt = AfxGetResourceHandle(); AfxSetResourceHandle(::GetModuleHandle(L"OrdStrg.dll")); CString s,strSql,strSql2,strC; s.LoadString(IDS_STRING9014); this->SetWindowText(s); InitStaticText(); int iTBCtrlID; short i; COleVariant vC; m_wndToolBar.Create(this, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_BORDER_BOTTOM); m_wndToolBar.LoadToolBar(IDR_TOOLBAR1); iTBCtrlID = m_wndToolBar.CommandToIndex(ID_BUTTON32779); if(iTBCtrlID>=0) { for(int j=iTBCtrlID; j<(iTBCtrlID + 6); j++) { switch(j) { case 0: m_wndToolBar.SetButtonStyle(j,TBBS_CHECKBOX); m_iBtSt =m_wndToolBar.GetToolBarCtrl().GetState(ID_BUTTON32779); break; /* case 1: case 2: case 3: case 4: break; */ default: m_wndToolBar.SetButtonStyle(j,TBBS_BUTTON); break; } } } OnEnableButtonBar(m_iBtSt,&m_wndToolBar); m_wndToolBar.SetButtonInfo(5,ID_EDIT_TOOLBAR,TBBS_SEPARATOR,130); // определяем координаты области, занимаемой разделителем CRect rEdit; m_wndToolBar.GetItemRect(5,&rEdit); rEdit.left+=6; rEdit.right-=6; // отступы if(!(m_EditTB.Create(WS_CHILD| ES_AUTOHSCROLL|WS_VISIBLE|WS_TABSTOP| WS_BORDER,rEdit,&m_wndToolBar,ID_EDIT_TOOLBAR))) return -1; CRect rcClientStart; CRect rcClientNow; GetClientRect(rcClientStart); RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, IDR_TOOLBAR1, reposQuery , rcClientNow); CPoint ptOffset(rcClientNow.left - rcClientStart.left, rcClientNow.top - rcClientStart.top); /* CRect rcChild; CWnd* pwndChild = GetWindow(GW_CHILD); // Это для смещения всех контрлов while (pwndChild) { pwndChild->GetWindowRect(rcChild); ScreenToClient(rcChild); rcChild.OffsetRect(ptOffset); pwndChild->MoveWindow(rcChild, FALSE); pwndChild = pwndChild->GetNextWindow(); } CRect rcWindow; GetWindowRect(rcWindow); rcWindow.right += rcClientStart.Width() - rcClientNow.Width(); rcWindow.bottom += rcClientStart.Height() - rcClientNow.Height(); MoveWindow(rcWindow, FALSE); */ // Положение панелей RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, IDR_TOOLBAR1, reposDefault , rcClientNow); /* if(m_EditTB.GetSafeHwnd()!=NULL){ AfxMessageBox("not NULL"); if(m_EditTBSChar.SubclassWindow(m_EditTB.GetSafeHwnd())){ AfxMessageBox("ok"); } } */ m_vNULL.vt = VT_ERROR; m_vNULL.scode = DISP_E_PARAMNOTFOUND; ptrCmd1 = NULL; ptrRs1 = NULL; ptrCmd1.CreateInstance(__uuidof(Command)); ptrCmd1->ActiveConnection = ptrCnn; ptrCmd1->CommandType = adCmdText; ptrRs1.CreateInstance(__uuidof(Recordset)); ptrRs1->CursorLocation = adUseClient; ptrRs1->PutRefSource(ptrCmd1); strSql = L"QT99"; OnShowGrid(strSql, ptrRs1,ptrCmd1,m_DataGrid1,InitDataGrid1); if(m_bFndC) { short fCol=7; m_Flg = false; OnFindInGrid(m_strFndC,ptrRs1,fCol,m_Flg); m_Flg = true; } m_pLstWnd = GetDlgItem(IDC_DATAGRID1); ptrCmd2 = NULL; ptrRs2 = NULL; ptrCmd2.CreateInstance(__uuidof(Command)); ptrCmd2->ActiveConnection = ptrCnn; ptrCmd2->CommandType = adCmdText; ptrRs2.CreateInstance(__uuidof(Recordset)); ptrRs2->CursorLocation = adUseClient; ptrRs2->PutRefSource(ptrCmd2); s = m_Radio1==0 ? _T("0"):_T("1"); switch(m_Radio1) { case 0: if(IsEnableRec(ptrRs3)) { i = 0; vC = GetValueRec(ptrRs3,i); vC.ChangeType(VT_BSTR); strC = vC.bstrVal; strC.TrimLeft(); strC.TrimRight(); strSql = _T("T27_T26 "); strSql+= s + _T(","); strSql+= strC; } break; case 1: strSql = _T("T27_T26 "); strSql+= s +_T(",0"); break; } OnShowGrid(strSql, ptrRs2,ptrCmd2,m_DataGrid2,InitDataGrid2); ptrCmd3 = NULL; ptrRs3 = NULL; ptrCmd3.CreateInstance(__uuidof(Command)); ptrCmd3->ActiveConnection = ptrCnn; ptrCmd3->CommandType = adCmdText; ptrRs3.CreateInstance(__uuidof(Recordset)); ptrRs3->CursorLocation = adUseClient; ptrRs3->PutRefSource(ptrCmd3); s = m_Radio1==0 ? _T("0"):_T("1"); switch(m_Radio1) { case 0: strSql = _T("T12_T27_1 "); strSql+= s + _T(",0"); break; case 1: if(IsEnableRec(ptrRs2)) { i = 0; vC = GetValueRec(ptrRs2,i); vC.ChangeType(VT_BSTR); strC = vC.bstrVal; strC.TrimLeft(); strC.TrimRight(); strSql = _T("T12_T27_1 "); strSql+= s + _T(","); strSql+= strC; } break; } OnShowGrid(strSql, ptrRs3,ptrCmd3,m_DataGrid3,InitDataGrid3); ptrCmd4 = NULL; ptrRs4 = NULL; ptrCmd4.CreateInstance(__uuidof(Command)); ptrCmd4->ActiveConnection = ptrCnn; ptrCmd4->CommandType = adCmdText; ptrRs4.CreateInstance(__uuidof(Recordset)); ptrRs4->CursorLocation = adUseClient; ptrRs4->PutRefSource(ptrCmd4); strSql = _T("QT4"); OnShowGrid(strSql, ptrRs4,ptrCmd4,m_DataGrid4,InitDataGrid4); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
void CDlg::OnShowEdit(void) { COleVariant vC; short i; CString strF; short IndCol; if(IsEnableRec(ptrRs1)) { switch(m_Radio1) { case 0: // по Товару i=7; // Код Товара vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strF=vC.bstrVal; IndCol = 0; m_Flg = false; if(ptrRs2->State==adStateOpen) { m_bFnd = OnFindInGrid(strF,ptrRs3,IndCol,m_Flg); } m_Flg = true; break; case 1: // по Группе i=6; // Код Группы vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strF=vC.bstrVal; IndCol = 0; m_Flg = false; if(ptrRs3->State==adStateOpen) { m_bFnd = OnFindInGrid(strF,ptrRs2,IndCol,m_Flg); } m_Flg = true; // if(m_bFnd){ if(ptrRs2->State==adStateOpen) { i=7; // Код Товара vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strF=vC.bstrVal; IndCol = 0; m_Flg = false; if(ptrRs2->State==adStateOpen) { m_bFnd = OnFindInGrid(strF,ptrRs3,IndCol,m_Flg); } m_Flg = true; } // } break; } if(ptrRs4->State==adStateOpen) { i = 8; vC = GetValueRec(ptrRs1,i); vC.ChangeType(VT_BSTR); strF=vC.bstrVal; IndCol = 0; m_Flg = false; if(ptrRs4->State==adStateOpen) { m_bFnd = OnFindInGrid(strF,ptrRs4,IndCol,m_Flg); } m_Flg = true; } } }