안녕하세요..
대분류코드 중분류코드 소분류코드 이름
0001 001 1 A
0001 001 2 B
0001 001 3 C
0001 002 4(1) D
0001 002 5(2) E
0001 003 6(1) F
.. .. .. ..
위에 보신대로 소분류 코드를 일련 번호로 변환하여 가져와서 1~1908 까지 기록이 되어 있거든요.. 근데 이걸 ()에 보신 식으로 각 대분류와 중분류 코드에 맞쳐서 각각의 일련 번호를 만들고 싶습니다. 그렇게해야하구요..
제가시도한 방법은
procedure TDataCode.CodeOrder;
Var
item : Integer;
begin
SCODEDBDisplay; // 소분류 코드를 다시 정렬 시킨 후
item := 0;
CodeSCODEDisplay;
if DM.Q_SOCODE.RecordCount > 0 then
begin
while not DM.Q_SOCODE.Eof do
begin
item := item + 1 ;
with DM.Q_SOCODE do
begin
// Close;
// SQL.Clear;
SQL.Add('UPDATE SCODE');
SQL.Add('SET SSCODE=:N1');
SQL.Add('WHERE CODE='''+DM.Q_SCODE.Fields[0].AsString+'''');
SQL.Add('AND MCODE='''+DM.Q_SCODE.Fields[1].AsString+'''');
SQL.Add('AND NAME='''+DM.Q_SCODE.Fields[3].AsString+'''');
ParamByName('N1').AsInteger := item;
ExecSQL;
end;
next;
end;
end;
end;
대강 이렇게 할려구 하구요..
근데 만일 레코드를 4개 가져 왔다면 이걸 돌리면서 4군데 값에 차례로 업데이트 하는 방법이 없을까요??
위에 소스는 엉터리구요...
가져온 레코드 값을 돌면서 업데이트 하는 방법 좀 가르쳐 주세요 ... ^^.. 부탁드립니다.