Не идентичны.
PHP код:
for (xRefReferencesEdit = xRefReferences_ds.getFirst(1) ? // are there any marked records -
xRefReferences_ds.getFirst(1) : // if yes, get the first marked record
xRefReferences;
читайте коментарии
если нет выделенных строк, то ваш getFirst() вернёт пустую запись
и while не отработает.
А должен, для записи на которой стоит курсор.