Показать сообщение отдельно
Старый 27.07.2005, 16:51   #22  
Kirvisniemi is offline
Kirvisniemi
Moderator
 
342 / 13 (1) ++
Регистрация: 21.12.2004
Цитата:
Хм... Допустим, я на своей машине поставлю нужный мне разделитель (т.е. "пробел" = 0x20). А у клиента что делать? Прописывать в регламент его IT-службе замену стандартного разделителя? А если у него на площадке целый "зоопарк" приложений?
Может так? :-)

<div class='CALtop'>C/AL</div><div class='CAL'>   VAR
    WshShell@1000000000 : Automation "{F935DC20-1CF0-11D0-ADB9-00C04FD58A0B} 1.0:{72C24DD5-D70A-438B-8A42-98424B88AFB8}:'Windows Script Host Object Model'.WshShell";

  PROCEDURE GetRegionalDelimiter() : Text[1024];
  BEGIN
    IF ISCLEAR(WshShell) THEN CREATE(WshShell);
    EXIT(FORMAT(WshShell.RegRead('HKEY_CURRENT_USER\Control Panel\International\sThouansd')));
    CLEAR(WshShell);
  END;

  PROCEDURE SetRegionalDelimiter(cDelimiter: Char) : Text[1024];
  BEGIN
    IF ISCLEAR(WshShell) THEN CREATE(WshShell);
    WshShell.RegRead('HKEY_CURRENT_USER\Control Panel\International\sThouansd', cDelimiter, 'REG_SZ');
    CLEAR(WshShell);
  END;

  PROCEDURE Export2Excel()
  BEGIN
    cDelimiter := GetRegionalDelimiter();
    SetRegionalDelimiter(' ');
    ...
    // export
    ...
    SetRegionalDelimiter(cDelimiter);
  END;</div>