Сервер Весов для весов CAS CL5000(J), CAS LP.Сервер Весов предназначен для автономной работы с множеством весов по локальной сети. Основной принцип работы Сервера Весов: Вы сформировали текстовый файл данных, передали его Серверу Весов и забыли. Вся остальная работа по организации выгрузки на весы ложится на Сервер Весов. Основные преимущества при использовании Сервера Весов:
|
Группы весов можно создавать как каталоги на жестком диске, можно создавать группы и подгруппы весов.
Пример:
C:\СерверВесов\ТорговыйЗал\Фрукты\Весы1
C:\СерверВесов\ТорговыйЗал\Фрукты\Весы2
C:\СерверВесов\ТорговыйЗал\Фрукты\Весы3
C:\СерверВесов\ТорговыйЗал\МясоКолбасы\Весы1
C:\СерверВесов\ТорговыйЗал\МясоКолбасы\Весы2
C:\СерверВесов\ТорговыйЗал\МясоКолбасы\Весы3
C:\СерверВесов\Кондитерка\Весы1
C:\СерверВесов\Кондитерка\Весы2
C:\СерверВесов\Фасовка\Весы1
C:\СерверВесов\Фасовка\Весы2
C:\СерверВесов\Фасовка\Весы3
C:\СерверВесов\Фасовка\ВесыРезерв
Принцип работы заключается в следующем: программа, которая производит выгрузку на весы (через Сервер Весов) закрепляет за определенными весами один каталог. И для выгрузки в одни определенные весы формируется и записывается файл с данными по товару только в этот один каталог. И так для каждых весов отдельно. Сервер Весов просматривает корневой каталог и его подкаталоги, в нашем примере это будет ”C:\СерверВесов” ищет там файлы, соответствующие маске для загрузки, например: ”*.txt”, ”Данные*.txt”, ”ДанныеДляВесов*.txt”. Как только Сервер Весов находит файл, соответствующий маске, то в каталоге, в котором файл был найден разворачивается База Данных, которая в дальнейшем будет поддерживаться только для этого каталога, только для этих весов. Если в каталоге для каких-то весов имеется несколько файлов для обработки, соответствующих маске загрузки, то первый будет обрабатываться файл с более ранней датой создания, а затем последующие более поздние. Наряду с БД Сервер Весов создает дополнительные папки для файлов запасных копий и для лог-файлов.
Если мы сделаем доступной по сети папку Сервера Весов (”C:\СерверВесов”), то это позволит нам с любого компьютера в сети производить выгрузку на любые весы, находящихся в пределах сетевой видимости Сервера Весов. Кстати, это могут быть весы не только подключенные по локальной сети, но и расположенные удаленно (через интернет соединение). Подключаясь к данной папке по сети, мы свободно можем контролировать работу Сервера Весов и ход его работы.
Файл Базы Данных Сервера Весов (“ScalesBD.dat”) представлен в текстовом виде, что позволит Вам производить над ним массу манипуляций. Вы можете его копировать, например, для запасной копии БД, временной копии БД, для выгрузки всей БД одних весов на другие, для создания архивной резервной копии всех БД, всех весов и т.д. И, конечно же, можно без проблем удаленно редактировать БД любых весов. Вносить изменения по данным товаров Вам может и не понадобится, но вносить изменения по параметрам связи с весами будет необходимым. Для закрепления определенного файла БД за одними весами, Вам нужно будет открыть этот файл на редактирование и задать нужные параметры связи, после чего сохранить изменения в этом же фале. При следующей обработке загрузочного файла будут взяты параметры подключения из файла БД.
Пример файл БД:
В данном примере, в качестве параметров связи, присутствуют данные:
3; CAS_IP_or_COM; 6;
3; CAS_V15; 1;
3; CAS_COM; 1;
3; CAS_COM_Speed; 1;
3; CAS_TimeOut; 3500;
3; CAS_Rep; 5;
Что означает следующее: данные этого файла БД, и последующих выгрузок в каталог, где находится этот файл, будут всегда выгружаться на весы: CAS LP 1.5 по СОМ6, скорость порта для 1.5 всегда 9600 (в примере 1), TimeOut 3500, повторов 5. Смотрите раздел "Описание полей для установки параметров связи из файла с данными"
Или:
3; CAS_IP_or_COM; 192.168.0.32;
3; CAS_V16; 1;
3; CAS_Number; 1;
3; CAS_Ethernet; 1;
3; CAS_Port; 7;
3; CAS_TimeOut; 500;
3; CAS_Rep; 5;
Что означает следующее: данные этого файла БД, и последующих выгрузок в каталог, где находится этот файл, будут всегда выгружаться на весы: CAS LP 1.6 по адресу 192.168.0.32 (TCP/IP), порт 7 (TCP/IP), номер весов 1, TimeOut 500, повторов 5. Смотрите раздел "Описание полей для установки параметров связи из файла с данными"
Для Сервера Весов дополнительно предусмотрены следующие команды:
4; 1; целое число, PLU товара; // Удаление товара из БД и из весов по номеру PLU
Пример "4; 1; 13;" - строка в файле (который будет передан Серверу Весов для обработки) означает: удалить из БД и из весов товар с PLU 13.
4; 11; целое число, количество дней; // Удаление всех товаров по которым не было изменений более установленного количества дней
Пример "4; 11; 31;" - удалить из БД и из весов данные по всем товарам, по которым небыло изменений более 31 дня.
4; 2; целое число, номер сообщения; // Удаление сообщения из БД и из весов по его номеру
4; 21; целое число, количество дней; // Удаление всех сообщений по которым не было изменений более установленного количества дней
Основой Лог-Файл Сервер Весов ведет в своей корневой папке. В этом файле Сервер Весов отображает ход всех событий и действий. В нашем примере это будет ” C:\СерверВесов\ScalesServer_08_2007.log”. Помимо основного лог-файла, лог ведется для каждого каталога (каждых весов) отдельно, например C:\СерверВесов\ТорговыйЗал\Фрукты\Весы1\SS_08_2007.log. Просмотр лог-файла по кнопке F3 (просмотр, только чтение) в программе FAR позволит Вам в режиме реального времени следить за ходом выгрузки на весы, с любого компьютера в сети у которого есть доступ к папке Сервера Весов.
Даже если какие-то весы в момент выгрузки на них данных не подключены (или временно не доступны), ни какие данные не будут утрачены, все изменения для этих весов сохранятся в БД этого каталога, т.е. только для этих весов. И как только весы будут подключены, все изменения, все данные из БД можно будет выгрузить на весы. Или они выгрузятся автоматически при обнаружении Сервером Весов файла с данными для весов. Этот способ позволяет легко производить замену весов. Например, одни весы по тем или иным причинам вышли из строя и требуется доставить их в ЦТО, а на их место поставить другие, резервные. После установки этих резервных весов все данные, что были в старых весах остались в файле БД. Мы предварительно настраиваем связь с новыми весами под параметрами старых и подаем команду Серверу Весов “Выполнить выгрузку на весы всей БД”. Для подачи команды Серверу Весов нужно в папке этих весов создать текстовый файл с двумя символами “5;” (пять и двоеточие), название файла должно соответствовать маске файла для обработки Сервером Весов.
Один раз установленный Сервер Весов, сворачивается в TrayIcon (иконка возле сис. часов) и ведет свою дальнейшую работу автономно. Не забудьте проверить, установлен ли сервер весов в автозагрузку.
При первом запуске Сервера Весов необходимо только настроить ”Параметры программы”, смотрите рисунок:
Необходимо установить галочку ”режим сервера весов”. Задать рабочий каталог Сервера Весов ”Каталог весов”. Если работа будет вестись по сети, конечно-же каталог должен быть доступен с других компьютеров в сети.
Внимательно относитесь к установке следующих параметров программы, от которых будет зависеть устойчивость, и надежность работы:
”Маска файлов” – Маска файлов с данными по товару для выгрузки в весы. Рекомендуется устанавливать маску типа *.txt. Не следует ставить маску с расширением log, dat, html.
”время опроса” - время в минутах, через которое Сервер Весов будет просматривать каталог весов (и его подкаталоги), искать в них файлы с данными для выгрузки на весы.
”прерывать, если ошибка” - прерывать выгрузку на весы, если была ошибка обмена с весами.
“Удалять товары” – Удалять из БД весов товары, обновления которых не было уже несколько дней, количество дней задается.
“не удалять загр. файл, если ошибка с весами” – не удалять загр. файл, если ошибка с весами. Сервер Весов будет его обрабатывать повторно при следующем цикле проверки каталога Сервера Весов и так до тех пор, пока весь файл не будет обработан полностью без ошибок.
”делать запасные копии входящих файлов” – делать запасные копии входящих файлов после их обработки, перед их удалением. Если стоит данная галочка, то Сервер Весов создаст каталог для запасных копий и будет складывать туда каждый файл с данными для весов.
Ведение своей Базы Данных отдельно для каждых весов.
Созданная единожды БД для отдельных весов хранится в текстовом виде (как упоминалось ранее). Каждый раз при работе с данными для весов файл БД “ScalesBD.dat” обновляется и все изменения отражаются в этом файле БД.
Алгоритм работы СВ с БД:
Для чего необходимо выставлять флажки “обновлен”, “на удаление” в БД, чтобы при временно не работающих весах, все изменения по товарам для этих весов фиксировались в БД. Как весы будут введены в строй, при обработке очередного файла для весов, в весы будут выгружены не только обновления из нового файла, но и те, что не получилось выгрузить на весы ранее. В случае с заменой весов на новые, имеет смысл подать СВ команду выгрузить всю БД на весы.
Из данного алгоритма работы не сложно заметить, что в случае непредвиденного сбоя на компьютере Сервера Весов, перезагрузки, выключения питания, потери сети и прочее, данные, переданные для выгрузки на весы, не будут утрачены. Либо еще не будет удален файл с данными для весов, либо в БД весов не будут сняты галочки с обновленных позиций. Так или иначе, при последующем включении Сервера Весов, и обращения СВ к весам на работе с которыми произошел сбой, обновление по товарам будет доведено до весов.
Автоматическое ведение нумерации PLU;
Выгружать файл с данными для весов можно как с PLU, так и без.
Если PLU не задан, то поиск товара Сервером Весов по БД весов производится по коду товара. Если товар по коду найден, то СВ фиксирует в БД изменения по этому товару. Если же товар по коду в БД весов не найден, то СВ присваивает ему новый PLU и вводит как новую позицию, расширяя список товаров БД. При генерации нового номера PLU, Сервер Весов берет первый свободный номер PLU (начиная отсчет с 1). В случае постоянной выгрузки на весы товаров без PLU, возможно заполнение всего номерного пространства для PLU. Для CAS LP 1.5 PLU может быть не более 600, а для CAS LP 1.6 не более 1000. Как показывает практика, на текущий момент (день, неделю) на весах требуется работать только с несколькими десятками товаров, остальные не используются. Чтобы постоянное пополнение БД и генерация новых номеров PLU не приводила ее к критическому заполнению, в СВ предусмотрена настройка в параметрах программы “Удалять товары”, удалять из БД весов товары, обновление которых не было уже несколько дней, количество дней задается. Таким образом, автоматически будут высвобождаться новые места (новые номера PLU) в БД для товаров.
Если при выгрузке файла с товаром на СВ, PLU задан, то СВ ищет этот товар в БД по номеру PLU. Если же такой товар найден, то СВ фиксирует по нему изменения, если же нет, то заводится новый товар в БД весов с этим PLU.
В одном файле для выгрузки данных по товару для СВ могут быть товары как с PLU, так и без него. Наличие кода товара для каждого товара обязательно.
При работе с сообщениями наличие номера сообщения обязательно. Ввод и обновление сообщений в БД будет вестись по его номеру.
Сервер Весов освобождает Вас от рутины вести нумерацию PLU для каждых весов. Работать с весами, выгружая данные по товару с кодом значительно проще, чем содержать и вести свою БД с нумерацией PLU.
Когда Сервером Весов ведется автоматическая нумерация PLU, как же быть с распечаткой списка товаров, чтобы работать на весах? Вам, из вашей программы, нужно просто считать текстовый файл БД “ScalesBD.dat”. Все данные в нем представлены в текстовом виде, жестко разнесены по полям, поля разделяются точкой с запятой. Одна строка в этом файле означает одна запись по одному товару (или сообщению). Итак, если Вам понадобится распечатать на принтере памятку для работающего на весах со списком товаров и номеров PLU, то Вы можете воспользоваться непосредственно Базой Данных Сервера Весов, соответствующим нужным весам файлом “ScalesBD.dat”. Если же Вы желаете распечатать список товаров из самого СВ, то Вам нужно сперва открыть нужный файл “ScalesBD.dat” (меню ”Файл”, “Открыть файл”), а затем сформировать и распечатать список товаров, меню ”Отчеты”, “Список товаров”. Так же распечатка списка товаров возможна из меню ”Таблицы данных”, ”Редактирование товаров из памяти программы (весов)”, через контекстное меню создать Excel файл со списком, который возможно отформатировать или отсортировать в нужном для Вас виде.
Ведение лог файла, как общего, так и отдельно для каждых весов;
Сервер Весов ведет журнал файлы (лог-файлы), где записывает все действия по работе с выгрузкой на весы. СВ ведет один общий лог-файл, где отображаются все действия СВ по всем весам. Этот файл находится в корневой папке “Каталог весов”, имеет расширение log. Рекомендуем просматривать этот файл в режиме реального времени, этим Вы можете удаленно (по сети) контролировать работу СВ. Особенно удобно использовать для просмотра лога программу FAR, лог открывается по клавише F3 (только просмотр) и просмотр файла позиционируется на последнюю запись в файле, при дальнейшем добавлении СВ записи в этот файл, записи автоматически прокручиваются на последнюю. Так один раз открыв на просмотр лог, Вы можете наблюдать за работой СВ не предпринимая уже никаких действий.
[Посмотреть демонстрационный клип работы с Сервером Весов 1.16Мб]
AVI файл в самораспаковывающемся архиве, после просмотра AVI файл удаляется автоматически.
В этом AVI клипе демонстрируется работа с Сервером Весов с помощью программы FAR, возможность создания новых баз данных по новым весам, установка параметров связи с весами прямо в файл базы данных, передача файлов с данными (копирование файла) для выгрузки на весы, возможность контроля работы СВ по логу в режиме реального времени.
Поочередно производятся следующие действия:
Работа с Сервером Весов через FAR, дает возможность (по примеру данного клипа) работать удаленно (по сети), не имея доступа к управлению рабочим столом, где установлен и работает сам СВ.
Ведение запасных копий файлов с данными, которые передавались Серверу Весов для выгрузки на весы;
Сервер Весов все файлы, которые поступили ему для обработки и выгрузки на весы копирует в каталог запасных копий. Для чего могут понадобиться эти копии? Если понадобилось проследить по какой-то позиции товара, как менялась ее цена. Если понадобилось вернуться к какой-то выгрузке, за прошлую дату. Если понадобилось проследить даты и время выгрузок на СВ. Копии файлов с товарами косвенно есть копии всей БД для определенных весов.
Сервер Весов в папке каждых весов создает папку ”Backup”, в нее помещает все входящие файлы по маске ”ddmmyy_ hhmm_*. bkp”, т.е. копирует файл, добавляя впереди его имени дату и время его обработки Сервером Весов, расширение переименовывается на bkp.
[на главную страничку]
[посмотреть другие наши программы, проекты]