void btl1strdb(CString btlstr)
{
int bhno=0, bzno=0; CString btlstr1,stemp, jhstr,jmstr,jsstr,clstr,xhstr,bhstr,bzstr;
LPCTSTR sortstr1; btlstr1=btlstr;
jhstr=btlstr1.Mid(btlstr1.Find("件号")+5,btlstr1.Find("件数")-btlstr1.Find("件号")-5-1);
jmstr=btlstr1.Mid(btlstr1.Find("件名")+5,btlstr1.Find("件号")-btlstr1.Find("件名")-5-1);
jsstr=btlstr1.Mid(btlstr1.Find("件数")+5,btlstr1.Find("材料")-btlstr1.Find("件数")-5-1);
clstr=btlstr1.Mid(btlstr1.Find("材料")+5,btlstr1.Find("重量")-btlstr1.Find("材料")-5-1);
xhstr=btlstr1.Mid(btlstr1.Find("型号")+5,btlstr1.Find("部号")-btlstr1.Find("型号")-5-1);
bhstr=btlstr1.Mid(btlstr1.Find("部号")+5,btlstr1.Find("件名")-btlstr1.Find("部号")-5-1);
//bzstr=btlstr1.Mid(btlstr1.Find("部号")+5,btlstr1.Find("件名")-btlstr1.Find("部号")-5-1); LPCTSTR jhstr1(jhstr);
LPCTSTR jmstr1(jmstr);
LPCTSTR jsstr1(jsstr);
LPCTSTR clstr1(clstr);
LPCTSTR xhstr1(xhstr);
LPCTSTR bhstr1(bhstr);
if(jhstr.Right(1)=="H" || jhstr.Right(1)=="h")
{
//jhstr=jhstr.Left(jhstr.GetLength()-1);
LPCTSTR sortstr1(jhstr.Left(jhstr.GetLength()-1));
}
CDaoDatabase db;
db.Open(_T("e:\\flq\\cpstest.mdb")); CDaoRecordset rs(&db);
rs.Open(dbOpenDynaset,
_T("Select * FROM Parts "));
int nFieldCount = rs.GetFieldCount();
try
{
// while (!rs.IsEOF()) {
COleVariant var;
rs.AddNew();
for (int i=0; i <= nFieldCount; i++)
{
switch(i)
{
case 0:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,jsstr1);
break;
case 1:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,jhstr1); break;
case 2:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,clstr1);
break;
case 3:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,bhstr1);
break;
case 4:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,xhstr1);
break;
case 5:
var = rs.GetFieldValue(i);
//rs.SetFieldValue(i,xhstr1);
break;
case 6:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,jmstr1);
break;
case 8:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,sortstr1);
break; default:
break;
} } rs.Update(); rs.MoveNext();
}
// }
catch (CDaoException* e)
{ e->Delete();
}
rs.Close();
db.Close();
}
{
int bhno=0, bzno=0; CString btlstr1,stemp, jhstr,jmstr,jsstr,clstr,xhstr,bhstr,bzstr;
LPCTSTR sortstr1; btlstr1=btlstr;
jhstr=btlstr1.Mid(btlstr1.Find("件号")+5,btlstr1.Find("件数")-btlstr1.Find("件号")-5-1);
jmstr=btlstr1.Mid(btlstr1.Find("件名")+5,btlstr1.Find("件号")-btlstr1.Find("件名")-5-1);
jsstr=btlstr1.Mid(btlstr1.Find("件数")+5,btlstr1.Find("材料")-btlstr1.Find("件数")-5-1);
clstr=btlstr1.Mid(btlstr1.Find("材料")+5,btlstr1.Find("重量")-btlstr1.Find("材料")-5-1);
xhstr=btlstr1.Mid(btlstr1.Find("型号")+5,btlstr1.Find("部号")-btlstr1.Find("型号")-5-1);
bhstr=btlstr1.Mid(btlstr1.Find("部号")+5,btlstr1.Find("件名")-btlstr1.Find("部号")-5-1);
//bzstr=btlstr1.Mid(btlstr1.Find("部号")+5,btlstr1.Find("件名")-btlstr1.Find("部号")-5-1); LPCTSTR jhstr1(jhstr);
LPCTSTR jmstr1(jmstr);
LPCTSTR jsstr1(jsstr);
LPCTSTR clstr1(clstr);
LPCTSTR xhstr1(xhstr);
LPCTSTR bhstr1(bhstr);
if(jhstr.Right(1)=="H" || jhstr.Right(1)=="h")
{
//jhstr=jhstr.Left(jhstr.GetLength()-1);
LPCTSTR sortstr1(jhstr.Left(jhstr.GetLength()-1));
}
CDaoDatabase db;
db.Open(_T("e:\\flq\\cpstest.mdb")); CDaoRecordset rs(&db);
rs.Open(dbOpenDynaset,
_T("Select * FROM Parts "));
int nFieldCount = rs.GetFieldCount();
try
{
// while (!rs.IsEOF()) {
COleVariant var;
rs.AddNew();
for (int i=0; i <= nFieldCount; i++)
{
switch(i)
{
case 0:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,jsstr1);
break;
case 1:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,jhstr1); break;
case 2:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,clstr1);
break;
case 3:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,bhstr1);
break;
case 4:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,xhstr1);
break;
case 5:
var = rs.GetFieldValue(i);
//rs.SetFieldValue(i,xhstr1);
break;
case 6:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,jmstr1);
break;
case 8:
var = rs.GetFieldValue(i);
rs.SetFieldValue(i,sortstr1);
break; default:
break;
} } rs.Update(); rs.MoveNext();
}
// }
catch (CDaoException* e)
{ e->Delete();
}
rs.Close();
db.Close();
}
{
CString mText,mPara,mClassfy,seartext,mCount;
int i,k;
mText=mlinetext;
i=mText.Find(";");
if(i <= 0)
{
i = mText.Find(";");
} if(i > 0)
{ mPara=mText.Left(i);
mText=mText.Right(i);
//return TRUE;
}
else
{
return FALSE;
// return;
}
i=mText.Find("(");
if(i <= 0)
{
i = mText.Find("(");
} if(i > 0)
{ mPara=mText.Left(i);
mText=mText.Right(i-1);
k=mText.Find(")");
if(i <= 0)
{
k = mText.Find(")");
}
if(k > 0)
{
mCount = mText.Left(k);
}
k=mText.Find("件");
if(k > 0)
{
mCount = mText.Left(k);
}
//return TRUE;
}
else
{
mClassfy=mText;
//mClassfy=mText.TrimRight();
} LPCTSTR mLineTextstr(mlinetext);
LPCTSTR mClassfystr(mClassfy);
LPCTSTR mParastr( mPara);
//LPCTSTR jimstr1(jimstr);
//CDaoDatabase db;
CDaoDatabase* db1 = new CDaoDatabase;
db1->Open(_T("e:\\flq\\cpstest.mdb")); CDaoRecordset rs2(db1);
rs2.Open(dbOpenDynaset,
_T("Select * FROM Standard "));
int nFieldCount = rs2.GetFieldCount();
try
{
// while (!rs.IsEOF()) {
COleVariant var;
rs2.AddNew();
for (int i=0; i <= nFieldCount; i++)
{
switch(i)
{
case 0:
var = rs2.GetFieldValue(i);
rs2.SetFieldValue(i,mLineTextstr);
break;
case 1:
var = rs2.GetFieldValue(i);
//rs.SetFieldValue(i,""); break;
case 2:
var = rs2.GetFieldValue(i);
rs2.SetFieldValue(i,mClassfystr);
break;
case 3:
var = rs2.GetFieldValue(i);
rs2.SetFieldValue(i,mParastr);
break;
case 4:
var = rs2.GetFieldValue(i);
rs2.SetFieldValue(i,mParastr);
break;
case 5:
var = rs2.GetFieldValue(i);
rs2.SetFieldValue(i,mParastr);
break;
case 6:
var = rs2.GetFieldValue(i);
rs2.SetFieldValue(i,mParastr);
break;
case 7:
var = rs2.GetFieldValue(i);
rs2.SetFieldValue(i,mParastr);
break; default:
break;
} } rs2.Update(); rs2.MoveNext();
}
// }
catch (CDaoException* e)
{ e->Delete();
}AfxMessageBox("df");
rs2.Close();
db1->Close();}
第1个函数void btl1strdb(CString btlstr)调的表能读不能写,反之一样。
//rs.SetFieldValue(i,"");
===================================
该字段是否允许 NULL ,若不允许,必须为其设置值.
也就是这个工程的resourceView, 双击时出现“这个文件已在另一文件中打开”,无法编辑菜单
和对话框,如何解决?我这个工程作废了吗?
msdn 找了半天数值型的写不进,请帮我诊断一下:var = rs2.GetFieldValue(i);
rs.SetFieldValue(i,这里如何写数值型的阿);
rs.SetFieldValue(i,COleVariant(value,VT_I4 ));这样试试行不行