WRITELINETOFILE — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) м (→Пример) |
Hisava (обсуждение | вклад) м (→Пример) |
||
Строка 31: | Строка 31: | ||
file_name := r169_kod + r166_lvl + '.txt' | file_name := r169_kod + r166_lvl + '.txt' | ||
− | WriteLineToFile( '{| class = "wikitable"', file_name, TempPath ) | + | [[WriteLineToFile]]( '{| class = "wikitable"', file_name, TempPath ) |
− | WriteLineToFile( '|-', file_name, TempPath ) | + | [[WriteLineToFile]]( '|-', file_name, TempPath ) |
− | WriteLineToFile( '! Идентификатор реквизита || Наименование ', file_name, TempPath ) | + | [[WriteLineToFile]]( '! Идентификатор реквизита || Наименование ', file_name, TempPath ) |
fld := { 'IDENT', 'PNAME' } | fld := { 'IDENT', 'PNAME' } | ||
sql := [ Select IDENT, PNAME From R165 Where KINDDOC = '] + r169_kod + [' and LVLNUM = '] + r166_lvl + [' Order by IDENT ] | sql := [ Select IDENT, PNAME From R165 Where KINDDOC = '] + r169_kod + [' and LVLNUM = '] + r166_lvl + [' Order by IDENT ] | ||
− | aa := SqlToArr( sql, fld, ReflisPath ) | + | aa := [[SqlToArr]]( sql, fld, ReflisPath ) |
if !IsEmpty( aa ) | if !IsEmpty( aa ) |
Версия 22:48, 13 ноября 2016
WrieLineToFile - это программа из справочника R266
WRITELINETOFILE( str_line, name, path [, no_msg := true] )
Запись строки в файл
str_line - строка
name - имя файла
path - путь к файлу
no_msg - не надо выводить сообщения ( по умолчанию, no_msg = true, т.е. сообщения не нужны )
Пример
local aa, sql, i, ii, file_name, fld, r169_kod, r166_lvl // выбор документа r169_kod := ChoiceRefr( 'R169', 'KOD', { 'KOD', 'PNAME' }, ~Title := 'Выберите один документ' ) if Empty( r169_kod ) return endif // выбор уровня r166_lvl := ChoiceRefr( 'R166', 'LVLNUM', { 'LVLNUM', 'PNAME' }, [ KINDDOC = '] + r169_kod + [' ], ~Title := 'Выберите уровень' ) if Empty( r166_lvl ) return endif file_name := r169_kod + r166_lvl + '.txt' WriteLineToFile( '{| class = "wikitable"', file_name, TempPath ) WriteLineToFile( '|-', file_name, TempPath ) WriteLineToFile( '! Идентификатор реквизита || Наименование ', file_name, TempPath ) fld := { 'IDENT', 'PNAME' } sql := [ Select IDENT, PNAME From R165 Where KINDDOC = '] + r169_kod + [' and LVLNUM = '] + r166_lvl + [' Order by IDENT ] aa := SqlToArr( sql, fld, ReflisPath ) if !IsEmpty( aa ) for i := 1 to len( aa ) WriteLineToFile( '|-', file_name, TempPath ) WriteLineToFile( '|' + aa[i,1] + ' || ' + StrTran( StrTran( aa[i,2], ';', ' ' ), '|', ), file_name, TempPath ) next endif aa := '|}' WriteLineToFile( aa, file_name, TempPath, false )
Текст программы
parameters str_line, name, path, no_msg := true local aa, _file if Empty( path ) path := 'c:\script\' path := TempPath endif path := Nice_path( path ) if Empty( name ) name := 'test.ps1' endif if !File( ExpandUncFileName( path + name ) ) WriteTxtFile( {}, name, path, true ) endif aa := {} try _file := AssignFile( path + name ) if Empty( _file ) return endif TextReset( _file ) while !TextEof( _file ) Aadd( aa, ReadLn( _file ) ) end finally if !Empty( _file ) CloseFile( _file ) endif end Aadd( aa, str_line ) WriteTxtFile( aa, name, path, no_msg )