в итоге сделать это мы можем типа
Код: Выделить всё
select katmc.name
from katmc
where katmc.cgroupmc in (select nrec from tmGrMC)
создал времянку
Код: Выделить всё
sqlFreeStr(hStr);
sqlAddStr(hStr, ' table tmGMC ');
sqlAddStr(hStr, ' ( ');
sqlAddStr(hStr, ' cGroupMC : comp, ');
sqlAddStr(hStr, ' kGroupMC : string, ');
sqlAddStr(hStr, ' sGroupMC : string ');
sqlAddStr(hStr, ' ) ');
sqlAddStr(hStr, ' with index ');
sqlAddStr(hStr, ' ( ');
sqlAddStr(hStr, ' idx1 = cGroupMC ');
sqlAddStr(hStr, ' ); ');
sqlDropTmpTable('tmGMC');
sql_result := sqlCreateTmpTable(hStr, ctmNormal);
sqlFreeStr(hStr);
Код: Выделить всё
_loop groupmc
sqlExecDirect('INSERT INTO tmGMC (cGroupMC,sGroupMC) VALUES (' + ' #comp(' + string(groupmc.nrec) + '),'+string(groupmc.name)+')');
пробовал sustr, тоже не помогает
пробовал явно указывать размер sqlAddStr(hStr, ' sGroupMC : string[240] ');