自動編號 |
答題得分者是:tech_state
|
game
一般會員 發表:25 回覆:32 積分:11 註冊:2002-10-02 發送簡訊給我 |
void __fastcall TDataModule1::ClientMaintTableNewRecord(TDataSet *DataSet)
{
String client_no,c1,c2,client_id,j;
Integer i,leg;
//AutoID這個Query元件來做自動編號
AutoID->Close();
AutoID->SQL->Clear();
//將要自動編號的值由大到小做排序動作 方便等一下取最大值,在讀取速度上較快}
AutoID->SQL->Add("select * from clientmaint order by CLIENTID desc");
AutoID->Open();
//判斷如果資料庫是空的 就給起始號
if (AutoID->IsEmpty()) //then
{
client_no ="A00000";
}
else
{
//{如果不是IsEmpty就將指標移到第一筆抓目前編號為最大值的客戶編號}
AutoID->First();
client_no = AutoID->FieldByName("CLIENTID")->AsString;
}
//{開始對client_no做字串拆解及累加的動作}
c1 = copy("client_no, 1, 1"); //{取出編號第一值}
c2 = copy(client_no, 2, 6); //{取出後面六位數流水號}
c2 = IntToStr(StrToInt(c2) 1); //{先將c2轉為數字加一筆後再轉回字串}
leg = Length(client_no) - Length(c2); //{算出要補0的位數} for i = 1 to leg - 1 do
{
j = j '0'; {將0補上}
}
//將所有值相加
client_id = c1 j c2;
//相加後 即可得到加一之後最新的客戶編號
BossMaint->FieldByName('CLIENTID')->AsString = client_id;
//寫入建檔日期
fdBossMaint->wwDBDateTimePicker2->Field->value = Now;
}
} 請問我那錯了>_
------
溝通網路情、連接數位心 |
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
c1 = copy("client_no, 1, 1"); //{取出編號第一值}
c1 = copy(client_no, 1, 1); //{取出編號第一值}
c2 = copy(client_no, 2, 6); //{取出後面六位數流水號}
c2 = IntToStr(StrToInt(c2) 1); //{先將c2轉為數字加一筆後再轉回字串}
leg = Length(client_no) - Length(c2); //{算出要補0的位數} for i = 1 to leg - 1 do
{
j = j '0'; {將0補上}
}
//將所有值相加
client_id = c1 j c2;
//相加後 即可得到加一之後最新的客戶編號
BossMaint.Edit//{給值要在inser或Edit狀態}
BossMaint->FieldByName('CLIENTID')->AsString = client_id;
//寫入建檔日期
fdBossMaint->wwDBDateTimePicker2->Field->value = Now;
}
}
TRY TRY SEE 發表人 - chih 於 2003/05/12 16:56:30
|
game
一般會員 發表:25 回覆:32 積分:11 註冊:2002-10-02 發送簡訊給我 |
[C Error] DataModule1_a.cpp(61): E2268 Call to undefined function 'copy'
[C Error] DataModule1_a.cpp(64): E2268 Call to undefined function 'Length'
[C Error] DataModule1_a.cpp(66): E2376 For statement missing (
[C Error] DataModule1_a.cpp(72): E2451 Undefined symbol 'BossMaint'
[C Error] DataModule1_a.cpp(76): E2451 Undefined symbol 'fdBossMaint'
[C Warning] DataModule1_a.cpp(77): W8004 'leg' is assigned a value that is never used
[C Error] DataModule1_a.cpp(78): E2190 Unexpected } ======================
這些是錯誤訊息!!! 暗光鳥初手求學中!
------
溝通網路情、連接數位心 |
tech_state
版主 發表:44 回覆:638 積分:641 註冊:2003-02-10 發送簡訊給我 |
引言: void __fastcall TDataModule1::ClientMaintTableNewRecord(TDataSet *DataSet) { String client_no,c1,c2,client_id,j; Integer i,leg; //AutoID這個Query元件來做自動編號 AutoID->Close(); AutoID->SQL->Clear(); //將要自動編號的值由大到小做排序動作 方便等一下取最大值,在讀取速度上較快} AutoID->SQL->Add("select * from clientmaint order by CLIENTID desc"); AutoID->Open(); //判斷如果資料庫是空的 就給起始號 if (AutoID->IsEmpty()) //then { client_no ="A00000"; } else { //{如果不是IsEmpty就將指標移到第一筆抓目前編號為最大值的客戶編號} AutoID->First(); client_no = AutoID->FieldByName("CLIENTID")->AsString; } //{開始對client_no做字串拆解及累加的動作} c1 = copy("client_no, 1, 1"); //{取出編號第一值} c2 = copy(client_no, 2, 6); //{取出後面六位數流水號} c2 = IntToStr(StrToInt(c2) 1); //{先將c2轉為數字加一筆後再轉回字串} leg = Length(client_no) - Length(c2); //{算出要補0的位數} for i = 1 to leg - 1 do { j = j '0'; {將0補上} } //將所有值相加 client_id = c1 j c2; //相加後 即可得到加一之後最新的客戶編號 BossMaint->FieldByName('CLIENTID')->AsString = client_id; //寫入建檔日期 fdBossMaint->wwDBDateTimePicker2->Field->value = Now; } } 請問我那錯了>_ game, 您好 將上列紅色部分修改為 c1 = client_no.SubString(1, 1); //{取出編號第一值} c2 = client_no.SubString(2, 6); //{取出後面六位數流水號} leg = client_no.Length() - c2.Length(); //{算出要補0的位數} 試試看 ======================= 涵養怒中氣。謹防順口言。留心忙裡錯。珍惜有時錢。 是非終日有,不聽自然無 天下本無事,庸人自擾之 發表人 - tech_state 於 2003/05/12 18:45:49 |
game
一般會員 發表:25 回覆:32 積分:11 註冊:2002-10-02 發送簡訊給我 |
|
game
一般會員 發表:25 回覆:32 積分:11 註冊:2002-10-02 發送簡訊給我 |
這是出現的錯誤! [C Error] DataModule1_a.cpp(70): E2376 For statement missing (
[C Warning] DataModule1_a.cpp(81): W8004 'leg' is assigned a value that is never used
[C Error] DataModule1_a.cpp(82): E2190 Unexpected }
==============================================================
void __fastcall TDataModule1::ClientMaintTableNewRecord(TDataSet *DataSet)
{
String client_no,c1,c2,client_id,j;
Integer i,leg;
AutoID->Close();
AutoID->SQL->Clear();
AutoID->SQL->Add("select * from clientmaint order by CLIENTID desc");
AutoID->Open();
if (AutoID->IsEmpty())
{
client_no ="A00000";
}
else
{
AutoID->First();
client_no = AutoID->FieldByName("CLIENTID")->AsString;
}
c1 = client_no.SubString(1, 1); //{取出編號第一值}
c2 = client_no.SubString(2, 5);
c2 = IntToStr(StrToInt(c2) 1);
leg = client_no.Length() - c2.Length(); //{算出要補0的位數} for i=1 to leg - 1 do //70行
{
j = j '0'; //{將0補上}
} client_id = c1 j c2;
ClientMaintTable->Edit();//{給值要在inser或Edit狀態} ClientMaintTable->FieldByName("CLIENTID")->AsString = client_id; ClientMaint->wwDBDateTimePicker1->Field->Value=Now;
}//81行
}//82行 出現上面錯誤 暗光鳥初手求學中! 發表人 - game 於 2003/05/12 19:09:02 發表人 - game 於 2003/05/12 19:13:07
------
溝通網路情、連接數位心 |
tech_state
版主 發表:44 回覆:638 積分:641 註冊:2003-02-10 發送簡訊給我 |
引言: 這是出現的錯誤! [C Error] DataModule1_a.cpp(70): E2376 For statement missing ( [C Warning] DataModule1_a.cpp(81): W8004 'leg' is assigned a value that is never used [C Error] DataModule1_a.cpp(82): E2190 Unexpected } ============================================================== void __fastcall TDataModule1::ClientMaintTableNewRecord(TDataSet *DataSet) { String client_no,c1,c2,client_id,j; Integer i,leg; AutoID->Close(); AutoID->SQL->Clear(); AutoID->SQL->Add("select * from clientmaint order by CLIENTID desc"); AutoID->Open(); if (AutoID->IsEmpty()) { client_no ="A00000"; } else { AutoID->First(); client_no = AutoID->FieldByName("CLIENTID")->AsString; } c1 = client_no.SubString(1, 1); //{取出編號第一值} c2 = client_no.SubString(2, 5); c2 = IntToStr(StrToInt(c2) 1); leg = client_no.Length() - c2.Length(); //{算出要補0的位數} for i=1 to leg - 1 do //70行 { j = j '0'; //{將0補上} } client_id = c1 j c2; ClientMaintTable->Edit();//{給值要在inser或Edit狀態} ClientMaintTable->FieldByName("CLIENTID")->AsString = client_id; ClientMaint->wwDBDateTimePicker1->Field->Value=Now; }//81行 }//82行 出現上面錯誤 暗光鳥初手求學中! 發表人 - game 於 2003/05/12 19:09:02 發表人 - game 於 2003/05/12 19:13:07game, 您好 for i=1 to leg - 1 do 改為 for(i=1; i <= (leg - 1); i ) 您使用的應該不是C語言的語法吧! ======================= <>涵養怒中氣。謹防順口言。留心忙裡錯。珍惜有時錢。> <>是非終日有,不聽自然無> <>天下本無事,庸人自擾之> 發表人 - |
game
一般會員 發表:25 回覆:32 積分:11 註冊:2002-10-02 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |