Автоформирование макетов сообщений (auto200.txt)

           Автоформирование макетов сообщений
                    200, 201, 202, 206

    Для    настройки    автоформирования    макетов    (АФМ)
используется файл "auto200.cfg", который должен находится  в
каталоге \GID\MAKET\. В  этом файле указываются  станции, по
которым требуется  АФМ сообщений,  а также  типы сообщений и
направление поездов, по которым должны формироваться пакеты.

    ВНИМАНИЕ  !!!  -  все  коды  ЕСР  (кроме пункта передачи
информации) в  файле auto200.cfg  указываются в  том виде, в
котором  они   записаны  в   ведомости  станций   ГИД  (файл
techn_rp.XX)  -  5  знаков  без  контрольного из массива 180
(АСОУП).

     В   сформированные    сообщения   будут    автоматически
подставляться коды ЕСР для  200-х сообщений (5 или  6 знаков
с контрольным).


              1.  Формат файла "auto200.cfg":

    - строки, начинающиеся с ";" игнорируются;

    Настройки АФМ для одной станции могут быть в  упрощённом
или  подробном  формате.  Одна  и  та  же  станция НЕ должна
описываться  дважды  (например  в  упрощённом  и   подробном
формате).

              1.1  Упрощённый формат:

    Предусматривает одну строку описания на каждую станцию.
    Строки  с  описанием  упрощённого  формата  должны  быть
вверху  файла  настройки  (до  начала  описания  станций   в
подробном формате).

              Строка упрощённого формата:

    - содержит код ЕСР станции и 6 признаков для каждого  из
типов формируемых сообщений (201, 200, 202, 206(1),  206(2),
206(3)).        Все     поля     разделяются      пробелами.
Последовательность   и    возможные   значения    полей    в
информационной строке показаны в примере ниже.

ПРИМЕР строк упрощённого формата:

;  "-"   - не формировать;
;  "н"   - только для нечетных поездов;
;  "ч"   - только для   четных поездов;
;  "нч"  - для нечетных и четных поездов;
;----------------------------------------------------------
;    Станция          Грузовые            Пассажирские
;     ЕСР из       201  200  202     206(1)  206(2)  206(3)
;   "techn_rp"     приб отпр просл   приб    отпр    просл
;----------------------------------------------------------
         27580       нч   нч    нч     ч      н       -   АВТО 206=200
         27430       нч   нч    -      -      -       -
       1+92090       нч   нч    -      -      -       -
   92000+92020       нч   нч    нч     нч     нч      -   АВТО
;

    Если  перед  кодом  станции  зарождения информации стоит
число и  знак "плюс",  то в  сообщении, соответственно перед
кодом ЕСР  для 200-х  сообщений будет  указываться это число
со  знаком  "плюс"  (код  пункта  передачи информации). Этот
показатель  должен  быть  числовым  и  положительным  - до 6
знаков,  но   передается  "как   написано".    Т.е.,   если,
например,  в   auto200.cfg  указано   "00000+92090",  то   в
сообщениях будет передаваться "00000+92095".

    Если после  обязательной части  в информационной  строке
стоит группа символов "АВТО" (прописными русскими  буквами),
то сформированные сообщения  передаются в АСОУП  без участия
оператора (автоматически).

    Если после  обязательной части  в информационной  строке
стоит группа символов "206=200", то по пассажирским  поездам
будут передаваться не 206  сообщения, а сообщения 200,  201,
202.  Настройка по  пассажирским поездам указывается так  же
как и при передаче 206-х сообщений (в тех же позициях).   То
есть, для  того чтобы  по пассажирским  поездам передавались
200 сообщения строка должна иметь вид типа:

    кодЕСР      xx   xx   xx    нч  нч   нч     206=200

здесь  xx  -  настройка  для  передачи  200-х  сообщений  по
грузовым поездам.


            1.2. Подробный формат:

    Подробный формат  предусматривает описание  настроек АФМ
станции  в  виде  блока  из  нескольких строк. Настройки АФМ
подробного  формата  должны   располагаться  в  файле   ниже
настроек  АФМ  упрощённого  формата  (если  такие  настройки
есть).

    Первая строка  блока должна  начинаться с  символа "@" в
первой позиции  строки. Далее  в строке  указывается код ЕСР
станции,  для  которой  должно  выполняться  АФМ  (далее  по
тексту  -  "станция  АФМ").   Если  в  сообщении   требуется
дополнительно  проставлять  код  пункта  передачи,  то перед
кодом станции  указывается код  пункта передачи  (аналогично
упрощённому   формату).     Если   в   сообщение   требуется
подставлять  вместо  кода   физического  пункта   зарождения
информации  условный   код  пункта   зарождения   информации
(например, вместо  физической станции  "Иван-Город", которая
контролируется устройствами СЦБ, нужно подставлять  условный
"Иван-Город-Экспорт"), то после кода физического  зарождения
информации  можно  указывать  знак  "="  и  логический  КПЗ,
например:

@ 00001+07330=07600

Если  по  станции  не  требуется  передавать  в локомотивных
фразах  сведения  о  секциях  локомотивов,  то после КПП/КПЗ
можно указать  ключ "-КВС9"  (исключить фразы  с кодом  вида
следования = 9), например:

@ 96060 -КВС9

Если АФМ  необходимо выполнять  только на  основе сведений о
продвижении  поезда  по  данным  СЦБ  (не  выполнять  АФМ по
результатам ручной  корректировки графика)  в данной  строке
можно указать ключ "ОтСЦБ", например:

@ 00001+07330=07600  -КВС9  ОтСЦБ


После строки определения КПП/КПЗ  располагаются   строки  с
настройкой типов передаваемых сообщений по номерам поездов.

    Каждая строка содержит минимум пять полей:

   1)  Признак   типа  формируемого   сообщения.   Возможные
значения:
       - "201"   - сообщение о прибытии;
       - "200"   - сообщение об отправлении;
       - "202"   - сообщение о проследовании;
       - "206:1" - сообщение о прибытии;
       - "206:2" - сообщение об отправлении;
       - "206:3" - сообщение о проследовании;

   2) Диапазон номеров поездов. Формат:
      "(mmmm...nnnn)", где mmmm, nnnn = 1..9999;

   3)   Направление   поезда   (прибытия,   отправления  или
проследования).

     Направление может  указываться двумя  способами:

       - по чётности/нечётности номера поезда
          ("Н"  - для нечетных,
           "Ч"  - для чётных,
           "НЧ" - для всех    );

       - по направлению  на станцию. В  качестве направления
на станцию понимается (в конечном итоге) перегон с  которого
прибывает (на  который отправляется  поезд). До  указанной в
направлении   станции   строится   маршрут   и  запоминается
ближайший к станции  АФМ перегон.   Если от станции  АФМ, до
станции,  определяющей  направление,  невозможно   построить
маршрут,  в  протокол  загрузки  ГИД (startgid.prt) выдается
сообщение и строка настройки игнорируется.

   Для  прибытия/отправления  указывается  один  код станции
направления.

   Для проследования - два  кода направления через знак  "+"
-  "ОТКУДА+КУДА".   Один  из  кодов  может  быть  нулевым. В
случае, когда для  проследования указывается нулевой  первый
код  ("00000+ХХХХХ"),   АФМ  будет   выполняться  для   всех
поездов, которые  выходят на  тот перегон,  который лежит  в
направлении  ХХХХХ.  Если  указано  "ХХХХХ+00000", АФМ будет
выполняться для всех поездов, которые вступают на станцию  с
перегона  в  направлении  ХХХХХ.   Если  для   проследования
указано два кода  ("ХХХХХ+ЕЕЕЕЕ"), то АФМ  будет выполняться
для поездов, вступивших на станцию с перегона в  направлении
ХХХХХ и ушедших со станции в направлении ЕЕЕЕЕ.

   Если  для  прибытия  или  отправления в настройке указать
два кода через знак  "+", то для прибытия  будет использован
первый код (второй  игнорируется), для отправления  - второй
код (первый игнорируется).

   4) Направление  для подстановки  в сообщение.   Это  поле
имеет  значение  "-",  если  направление  следует определять
автоматически. Для  явного задания  направления используется
тот же формат,  что и для  направлений на станцию  (по п.3).
Для  прибытия  и  отправления  указывается  один  код,   для
проследования - два кода через знак "+". Следует  учитывать,
что  в  сообщение  206:3  (о проследовании) будет подставлен
только второй код из указанных в направлении

   5) Признак  автоматической передачи  сообщения. Возможные
значения:

     "-"  - сообщения не передаются автоматически;
     "АВТО"  -  (прописными  русскими  буквами)  - сообщения
передаются автоматически.


После обязательных полей может указываться код вида работы с
локомотивом, который следует подставлять по умолчанию в сообщения
201 и 206. Код указывается в виде "ЛКМ=N", где N = 0..9. По
умолчанию в сообщение подставляется нулевой признак работы
с локомотивом


ПРИМЕР настройки в расширенном формате:

;--------------------------------------------------------------
;  Тип    I  Номера   I  Направление  I  Направление  I    Признак
; 200-ки  I  поездов  I  поездов      I  в 200-ке     I  автопередачи
;--------------------------------------------------------------
@ 00001+83160  Называевская
; Прибытие пассажирских и пригородных
  206:1   (1...999)      Н              83020            -    ЛКМ=2
  206:1   (1...999)       Ч             79160            -    ЛКМ=2
  206:1   (6001...6999)  Н              83020            -    ЛКМ=2
  206:1   (6001...6999)   Ч             79160            -    ЛКМ=2
; Отправление пассажирских и пригородных
  206:2   (0001...0999)   Ч             83020            -
  206:2   (0001...0999)  Н              79160            -
  206:2   (6001...6999)   Ч             83020            -
  206:2   (6001...6999)  Н              79160            -
; Проследование пассажирских и пригородных
  206:3       (1...999)  Н              83020+79160      АВТО
  206:3       (1...999)   Ч             79160+83020      АВТО
  206:3   (6001...6999)  Н              83020+79160      АВТО
  206:3   (6001...6999)   Ч             79160+83020      АВТО
;  Прибытие всех остальных
  201     (1...9999)     Н              83020+79160      АВТО  ЛКМ=1
  201     (1...9999)      Ч             79160+83020      АВТО  ЛКМ=1
;  Отправление всех остальных
  200     (1...9999)     Н              83020+79160      АВТО
  200     (1...9999)      Ч             79160+83020      АВТО
;  Проследование всех остальных
  202     (1...9999)     Н              83020+79160      АВТО
  202     (1...9999)      Ч             79160+83020      АВТО
;----------------------------------------------------------------------
;
@ 92000 Тайшет
; Прибытие с Саянской (по всем поездам, включая пасс. - 201 сообщение)
  201     (1...9999)     88910               -           АВТО
;
; Отпр. на Саянскую   (по всем поездам, включая пасс. - 200 сообщение)
  200     (1...9999)     88910               -           АВТО
;
; Просл. на Саянскую   (по всем поездам, включая пасс.-200 сообщение)
202     (1...9999)  00000+88910              -           АВТО


Строки   с   описанием   типов   сообщений    обрабатываются
последовательно  до  первого  выполнения  набора условий для
поезда. В  приведённом выше  примере этот  факт используется
для  того,  чтобы  не  задавать  по станции Называевская два
диапазона  номеров   грузовых  поездов   для  каждого   типа
сообщения.  Здесь  просто   сначала  указаны  все   варианты
сообщений для пассажирских и пригородных поездов, а затем  -
сообщения 201, 200, 202  для любых номеров поездов.  Однако,
по  пассажирским  и  пригородным  эти  сообщения  не   будут
формироваться,  так  как  эти  поезда  будут "отлавливаться"
верхними строками (сообщение 206).


      1.3. Протокол АФМ и автопередачи.

    Кроме  вышеприведенных  информационных  строк  в   файле
"auto200.cfg"   может   содержаться   секция   инициализации
протокола  автоформирования  и   автопередачи  сообщений   в
следующем виде:

@Протокол
  1               - протокол включен (1-да, 0-нет)
 Z:\GID\WORK_BAS\ - каталог, где ведём протокол


    Протокол АФМ ведется в текстовом виде. Имя файла:
      - "200_pnow.XXX" для текущих календарных суток;
      - "200_prev.XXX" для истекших календарных суток.


    Процедура   инициализации   АФМ   на   основе  настройки
"auto200.cfg" выполняется  при загрузке  ГИД и  сообщения об
ошибках загрузки выводятся в файл startgid.prt.


1.4      Настpойка включения\выключения АФМ по станциям.

   Добавлена  секция,  в  котоpой  пеpечислены  станции,  по
котоpым не нужно пpоизводить АФМ. Напpимеp:

@ Отключить АФМ по станциям
  92000 Тайшет
  83200 Исиль-Куль
  83160 Называевская
@ Конец секции отключенных станций

   Начало и  конец секции  должны начинаться  с символа  @ и
содеpжать  стpоки,  указанные  в  пpимеpе. Если пpи загpузке
эта секция не  обнаpужена - она  НЕ создается. Секция  будет
создана, если пpоизойдет  изменение настpойки. Если  по всем
станциям,     описанным     в     auto200.cfg,      включено
автофоpмиpование  пpи  изменении  настpойки,  секция   будет
создана  пустой.    По  умолчанию  АФМ   включено  по   всем
станциям, для  котоpых есть  настpойка АФМ.   Пpи изменениях
настpоек  по  включению\выключению  АФМ  по  станциям стаpый
файл auto200.cfg сохpаняется  под именем auto200.bak,  далее
создается  новый  auto200.cfg,  в  котоpом  сохpаняются  все
настpойки  из  пpедыдущего  файла,  изменяется только секция
включения\выключения АФМ по станциям. Если ведется  пpотокол
АФМ  и  есть  настpойка  автофоpмиpования  по станции, но по
данной станции  есть отключение  АФМ -  в пpотокол выводится
соответсвующие  сообщение.   
   Изменение секции и  настpойки отключения АФМ  по станциям
пpоизводится без пеpезагpузки АРМа ГИД-Уpал.

         2. Принципы автоформирования макетов.


    Если  файл  "auto200.cfg"  не  содержит   информационных
строк или отсутствует, то АФМ не выполняется.

    АФМ выполняется  только для  тех поездов,  которые имеют
АСОУП-й индекс.

    АФМ  выполняется  на  любом  ведущем  рабочем  месте ГИД
(головной  машине  или  АРМ  ДСП,  ведущий собственную копию
базы),  на  котором  имеются  права  на передачу сообщений в
АСОУП  (см.   порядок  назначения  прав  в  "Руководстве  по
эксплуатации", глава 5):

    - при получении сообщения о продвижении поездов по данным
СЦБ;
    - при выполнении слежения за поездами по данным СЦБ;
    - при получении  сообщения о ручной  корректировке нитки
поезда на графике мышью;
    - после "склеивания" расписания, если для склееной нитки
выполняются следующие условия:
       -  станция  последняя  в  расписании,  среди  тех, по
         которым включено АФМ;
       -  по  этой  операции  и  после нее не было сообщения
         АСОУП о данном поезде;
       - время операции по  станции не позже, чем  час назад
         от    текущего    времени    (системного    времени
         компьютера),

    АФМ  для  прибытия  поезда  на  станцию  (по данным СЦБ)
может  выполнятся  несколько  раз,  по  мере  того,  как при
продвижении поезда по станции уточняется время его  прибытия
(начало   занятия   пути,   время   освобождения  горловины,
перемещение из парка в парк и т.д.).

    В случае проследования  поезда по станции  без остановки
сначала формируется  макет сообщения  о прибытии,  затем (по
обнаружению факта  проследования без  остановки) формируется
сообщение  о  проследовании.   При  этом  макет  сообщения о
прибытии   автоматически    уничтожается.    Сообщение    об
отправлении  или   проследовании  поезда   по  данным    СЦБ
формируется только после вступления поезда на перегон.

    В  режиме   автопередачи  сообщений   (когда  в   строке
конфигурации    указано    АВТО)    необходимо     учитывать
нижеописанные   моменты.    Макет   сообщения   о   прибытии
передается  в  АСОУП  через  9  минут после времени операции
прибытия, (если за это время не выявлено отправления),  либо
немедленно по обнаружению операции отправления (перед  200-м
сообщением).  Если в  сведениях о прибытии поезда,  попавших
на  формирущую   201-е  сообщения   машину,  указано   время
операции  меньшее,  чем  [t-8],  где  t  -текущее  системное
время,  то  201-е  сообщение  будет  сформировано и передано
немедленно.


    Если  в  настройке  АФМ  указаны  несколько станций (без
автопередачи    сообщений),    то    при    последовательном
проследовании поездом этих станций выполняется АФМ,  которое
уничтожает  предыдущие   непереданные  макеты   по   данному
поезду.  Т.е.  на  один  поезд  в  этом случае содержится не
более  двух  макетов  -  сообщение  о  последнем  по времени
прибытии  и  последнем  по  времени  отправлении  поезда  со
станций, указанных в настройке АФМ.

    Внимание  !  Сведения  о  локомотиве  в  автомакете  при
отправлении  поезда  проставляются  исходя  из информации на
момент прибытия. Поэтому, в случае изменения локомотива  или
бригады   во   время   стоянки,   требуется   корректировка
соответствующих полей автомакета.
   Если  со  станции  в  АСОУП  передается  сообщение  205 и
настроен регламент (передача сообщений 1042 в ГИД на  основе
входных 205  сообщений, то  сведения о  локомотиве и бригаде
будут подставлены в автомакет из этого сообщения).



       3. Действия пользователя при работе с АФМ.


    Признаком  непереданных  макетов  служит   периодическое
изменение  строки   в  правом   верхнем  углу   экрана   ГИД
(показание времени) на строку "(200.." желтого цвета.

    Для  просмотра  и  передачи автоматически сформированных
макетов  нужно  войти  в  меню  "разное|Авто-заготовки 200-х
сообщений", либо  находясь в  режиме работы  с АСОУП  нажать
клавишу "F1", затем "F3".  Кроме того, для получения  списка
сформированных  макетов  можно  щелкнуть  мышкой по мигающей
надписи  "(:200"  в  левом  верхнем  углу  экрана.  Передача
сообщений  в  АСОУП  может   выполняться  прямо  из   списка
сообщений на графике - пункт меню "F2 - отправить"

   Выбранный из списка  автомакет попадает в  экранную форму
корректировки  и  передачи  соответствующего вида сообщения.
Здесь его можно откорректировать и передать в АСОУП.