В шаблоне чека, печатающегося из Frontol, можно настроить вывод текста из файла, который может находиться как в самой кассе, если она одна, так и в сети, если нужно печатать в чеках какую-то общую рекламу/информацию на всех кассах магазина.
В этом случае, не требуется доступа ни к базе Frontol, ни к самим кассам, достаточно только редактировать текст в файле, который будет находиться в папке с открытым общим сетевым доступом, на любом компьютере.
- Открываем Frontol Администратор и переходим на вкладку Документы
- Заходим в Шаблоны
- Открываем шаблон Продажа > Шаблон чека ФЗ-54
- В открывшемся окне нажимаем Редактировать
В открывшемся редакторе, в самом верху, размещаем функцию для вывода нашего текста из файла. Шаблон написан на Jscript - модификация Javascript от Microsoft, встроенная в систему. В переменной FileName указан сетевой путь к нашему файлу: FileName = "\\\\comp1\\Check\\text.txt";
То есть, например, он будет находиться в компьютере с именем comp1, в папке Check. Если же файл будет использваться только одной кассой и база Frontol находиться на ней же, то можно там же его и разместить, тогда строка будет выглядеть так: FileName = "C:/Check/text.txt";
{
FSO = new ActiveXObject("Scripting.FileSystemObject");
FileName = "\\\\comp1\\Check\\text.txt";
if (FSO.FileExists(FileName))
{
File = FSO.GetFile(FileName);
TextStream = File.OpenAsTextStream(1);
print.printLRStringLF("=","=","=");
CountStr = 0;
while(!TextStream.AtEndOfStream)
{
print.printStringWordWrap(TextStream.ReadLine());
CountStr++;
}
TextStream.Close();
if (CountStr != 0)
print.printLRStringLF("=","=","=");
}
}
Вызов функции можно прописать в любой позиции чека, например в самом низу: PrintTXT(print);
Теперь создаем наш текстовый файл по указанному, либо сетевому, либо локальному пути. Чтобы работал перенос строки, в пустой строке дожен быть пробел.
В случае если используется сетевой путь, в свойствах папки, в которой находится файл, должен быть открыт общий доступ по сети, а компьютер, на котором находится файл, должен быть всегда доступен. Иначе касса будет очень долго пробивать чек, пытаясь его найти.