15.11.2011, 12:39 | #1 |
Участник
|
Приветствую!
Много раз задавался вопросом, почему сделано именно так. Встречал в нескольких местах в системе. Вот код процедуры из 37 таблицы: Код: ItemChargeAssgntSales.SETCURRENTKEY( "Applies-to Doc. Type","Applies-to Doc. No.","Applies-to Doc. Line No."); ItemChargeAssgntSales.SETRANGE("Applies-to Doc. Type",DocType); ItemChargeAssgntSales.SETRANGE("Applies-to Doc. No.",DocNo); ItemChargeAssgntSales.SETRANGE("Applies-to Doc. Line No.",DocLineNo); IF NOT ItemChargeAssgntSales.ISEMPTY THEN ItemChargeAssgntSales.DELETEALL(TRUE); Единственное объяснение у меня - т.к. ISEMPTY быстрее позволяет обнаружить наличие записей, чем DELETEALL. Т.е. deleteall будет дольше искать записи для их удаления по сложному фильтру, нежели это делает ISEMPTY. Так ли это? Есть еще какие-нибудь предположения? |
|