请问各位高手们~有会Pro C/C++ 的吗??
想问问问题~~
void addInv() { EXEC SQLBEGIN DECLARE SECTION; charID2[11],invNo[11],invno[11],invDate[11],cusID[6],code[6],empID[6],adID[6],catogery[51],name[51]; double total,invAmount, price; int invQtn,totalrep=0; EXEC SQLEND DECLARE SECTION; fnConnectDB(); char ans[10]=""; char a[10]=""; char answer; re: system("cls"); cout<<"\n\t=====================================================\n"; cout<<"\n\t Invoice Detail\n\n"; cout<<"\t=====================================================\n\n"; cout<<"\n\tInvoice Number\t : "; input(invNo); cout<<"\tDate Issue\t : "; input(invDate); cout<<"\n\tStaff ID\t : "; input(empID); cout<<"\tAdmin ID\t : "; input(adID); cout<<"\n\tCustomer ID\t : "; input(cusID); cout<<"\n\tItem List : \n"; EXEC SQLOPEN viewItemcursor; EXEC SQLWHENEVER NOT FOUND DO break; while(1) { EXECSQL FETCH viewItemcursor INTO :code,:name,:price; cout<<"\n\n\tItem code\t: "<<code<<endl; cout<<"\tEquipment Name\t: "<<name<<endl; cout<<"\tPrice per unit\t: "<<price<<endl; } EXEC SQLWHENEVER NOT FOUND CONTINUE; EXEC SQLCLOSE viewItemcursor; loop2: cout<<"\t"; system("pause"); cout<<"\tItem Code SOLD\t\t : "; input(code); if(sqlca.sqlcode==0) { EXECSQL SELECT price into :price from Item WHERE code=:code; cout<<"\n\tPrice\t : RM"<<price; cout<<"\tQuantity\t : "; cin>>invQtn; cout<<"\tTotal Price\t : RM"; invAmount=price*invQtn; cout<<invAmount; } else { cout<<"invalid ID"<<endl; addInv(); } loop: cout<<"\n\n\tDo you want to save this record ?[y/n]:"; input(ans); if(ans[0]=='y'||ans[0]=='Y') { if(sqlca.sqlcode==0) { EXECSQL INSERT INTO InvoiceVALUES(:invNo,:cusID,:code,:empID,:adID,:invDate,:invQtn,:invAmount); EXECSQL COMMIT; cout<<"\n\tthe record was succesfully save\n\n"; totalrep++; cout<<"\tDo you want to add other item to this invoice?[y/n]"; cin>>answer; if(answer=='Y'||answer=='y') goto loop2; else { EXECSQL SELECT SUM(invAmount) INTO :total FROM Invoice WHERE invNo=:invNo; EXECSQL SELECT invNo,cuusID,code,empID,adID,invDate,invQtn,invAmount INTO:invNo,:cusID,:code,:empID,:adID,:invDate,:invQtn,:invAmount from Invoice WHEREinvNo=:invNo; cout<<"\t----------------------------------------------------------------------"; cout<<"\n\tInvoice No : "<<invNo; cout<<"\t\t\tDate : "<<invDate; cout<<"\n\tEmployee ID : "<<empID<<"\t\t\tAdmin ID : "<<adID; cout<<"\n\tCustomer ID : "<<cusID; cout<<"\n\t----------------------------------------------------------------------"; cout<<"\n\tItems:\n"; cout<<"\n\tNo.\tItem Code\tPrice perCarton\tQuantity\tAmount "; for(inti=0;i<totalrep;i++) cout<<"\n\t"<<i+1<<".\t"<<code<<"\t\t\t"<<price<<"\t\t"<<invQtn<<"\t\t"<<invAmount; cout<<"\n\t\t\t\t\t\tTotal : "<<total; cout<<"\n\t----------------------------------------------------------------------"; cout<<"\n\n\tPress 1 to continue add new rentaltransaction,\n\telse Press 2 back to transaction menu\n\t>>"; input(a); if (a[0]=='1') goto re; else if (a[0]==27) InvoiceMenu(); else if (a[0]=='2') InvoiceMenu(); else { cout<<"\n\n\n\terror occur, fail to save\n\t"; addInv(); } } } } else if (ans[0]=='n' || ans[0]=='N') { cout<<"\n\tthe record is not save"; cout<<"\n\n\n\tPress :"; cout<<"\n\t1. Continue add new rental transaction,\n\telsePress 2 back to transaction menu\n\t>>"; input(a); if (a[0]=='1') goto re; else if (a[0]==27) InvoiceMenu(); else if (ans[0]==27) InvoiceMenu(); } else { cout<<"\nwrong input\n"; system("pause"); goto loop; } fnCloseDBConnection(); system("pause"); InvoiceMenu(); }
我的c++出现的item,两个都是一样的,但是database又没有问题哦.. @@..
|