Показать сообщение отдельно
Старый 22.10.2015, 13:38   #3  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Цитата:
Сообщение от Kadawrik Посмотреть сообщение
Поковырялась я с этой проблемной строчкой и опытным путем установилось следующее:
функция DELCHR работает как-то странно. Как только я ее удалила (осталось только BemerkTxt := COPYSTR(BemerkTxt,BindeStrich+1); ), всё сразу поехало.

Кто-нить сталкивался с подобными глю фичами?
Прежде чем обвинять DELCHR() в глюке, разбейте вашу проблемную строчку для чистоты эксперимента на две.
Вместо:

Код:
IF STRLEN(BemerkTxt) > 0 THEN
      BemerkTxt := DELCHR(COPYSTR(BemerkTxt,BindeStrich+1),'<>',' ');
напишите

Код:
IF STRLEN(BemerkTxt) > 0 THEN BEGIN
  BemerkTxt := COPYSTR(BemerkTxt,BindeStrich+1);
  BemerkTxt := DELCHR(BemerkTxt,'<>',' ');
END;
Держу пари, что ошибка вылетит теперь на первой строчке с COPYSTR(). Здесь если что и глючит, так это ваш алгоритм чтения и разбивания строки, тем более сами же написали: Признаком конца строки является знак _
Копайтесь в вашем алгоритме.