|
Процедура глФайлЛог(Файл, Текст) Экспорт
Перем ff,txt;
ff = CreateObject("Scripting.FileSystemObject");
txt = ff.OpenTextFile(Файл, 8, 1);
txt.WriteLine(""+Формат(ТекущаяДата(), "ДДДММГГГГ")+" "+ТекущееВремя()+" "+Текст);
txt.Close();
КонецПроцедуры
Функция глСтрока(сп, Разделитель = ",") Экспорт
Перем СтрРез;
Если ТипЗначения(сп) = 2 Тогда
Возврат сп;
ИначеЕсли ТипЗначенияСтр(сп) = "СписокЗначений" Тогда
СтрРез = "";
Для исп = 1 по сп.РазмерСписка() Цикл
СтрРез = СтрРез + Разделитель + сп.ПолучитьЗначение(исп);
КонецЦикла;
Возврат Сред(СтрРез, СтрДлина(Разделитель)+1);
Иначе
сообщить("Неправильное использование функции глСтрока");
Возврат "";
КонецЕсли;
КонецФункции
Функция глСписок(стр = "", Разделитель = ",", флДобавлятьПустыеЗначения=0) Экспорт
Перем _рез, _стр, _поз;
Если ТипЗначенияСтр(стр) = "СписокЗначений" Тогда
Возврат стр;
ИначеЕсли ТипЗначения(стр) = 2 Тогда
_Рез = ЗначениеИзСтрокиВнутр("{""VL"",{}}");
_стр = стр;
_поз = Найти(_стр, Разделитель);
Если _поз > 0 Тогда
_ДлинаРазделителя = СтрДлина(Разделитель);
Пока _поз > 0 Цикл
_зн = СокрЛП(Лев(_стр, _поз-1));
_стр = Сред(_стр, _поз + _ДлинаРазделителя);
_поз = Найти(_стр, Разделитель);
Если (флДобавлятьПустыеЗначения = 1)или(ПустаяСтрока(_зн) = 0) Тогда
_Рез.ДобавитьЗначение(_зн);
КонецЕсли;
КонецЦикла;
КонецЕсли;
Если (флДобавлятьПустыеЗначения = 1)или(ПустаяСтрока(_стр) = 0) Тогда
_Рез.ДобавитьЗначение(СокрЛП(_стр));
КонецЕсли;
Возврат _Рез;
Иначе
сообщить("Неправильное использование функции глСписок");
Возврат СоздатьОбъект("СписокЗначений");
КонецЕсли;
КонецФункции
Функция глТаблицаЗначений(НазвКолонок) Экспорт
Перем резТЗ, сп, стр, Колонка, Тип, Длина, Точность;
резТЗ = СоздатьОбъект("ТаблицаЗначений");
сп = глСписок(НазвКолонок, ",", 0);
Если сп.РазмерСписка() > 0 Тогда
Для исп = 1 по сп.РазмерСписка() Цикл
стр = сп.ПолучитьЗначение(исп);
Если Прав(стр, 1) = "*" Тогда
резТЗ.НоваяКолонка(Лев(стр, СтрДлина(стр)-1), "Число");
ИначеЕсли Найти(стр, "-") = 0 Тогда
резТЗ.НоваяКолонка(стр);
Иначе
стр = СтрЗаменить(стр, "-", РазделительСтрок);
Колонка = СокрЛП(СтрПолучитьСтроку(стр, 1));
Тип = СокрЛП(СтрПолучитьСтроку(стр, 2));
Длина = Число(СтрПолучитьСтроку(стр, 3));
Точность = Число(СтрПолучитьСтроку(стр, 4));
резТЗ.НоваяКолонка(Колонка, Тип, Длина, Точность);
КонецЕсли;
КонецЦикла;
КонецЕсли;
Возврат резТЗ;
КонецФункции
|
|
|