Bankir.Ru
6 декабря, вторник 15:18

Объявление

Свернуть
Пока нет объявлений.

Как задать экран "Возьмите карту"

Свернуть
X
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • Как задать экран "Возьмите карту"

    Здравствуйте, все участники форума.

    Не подскажите, как завести экран типа "Возьмите Вашу карту".

    У меня NCR под OpenWay. В доке (NCR / NDC+) написано, что Transaction Reply Command должна содержать номер экрана, содержащего два экрана "Возьмите карту" и "Ждите деньги & чек". А откуда этот номер берется непонятно.

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

  • #2
    Linux
    Делается это в конфигурационном файле NCR на Нетсервере.
    Но если вы эти файлы ни разу не видели, то лучше обратитесь непосредственно в ваш Процессинг. Там помогут.

    Комментарий


    • #3
      Я как раз в процессинге. Файл ini_file.tbl мне доступен. Только его формат почти не описан. И второе, как собрать такой экран (включающий два экрана). Я тут сижу, разбираюсь. Может сам доплыву.

      Комментарий


      • #4
        Linux
        Файл ini_file.tbl мне доступен.
        На самом деле экраны разные, а в tbl'е (там где столбец screen) они просто перечисляются.
        А чтобы посмотреть конкретные экраны - идите в директорию пониже (CONFIG) и смотрите уже конфигурационный файл по этому типу банкоматов.

        Комментарий


        • #5
          Это кусок файла ini_file.

          -----+-----------------+-------+----------------------+--------+-------+----------+------------------------------------------+
          RC# | Operation Type | State | Screen | PickUp | Print | Dispense | DESCRIPTION |
          -----+-----------------+-------+----------------------+--------+-------+----------+------------------------------------------+
          00 | TRANSACTION | 300 | 230, 209, 209, 200 | NO | J,C | YES | Transaction completed successfully |
          -----+-----------------+-------+----------------------+--------+-------+----------+------------------------------------------+
          00 | BALANCE_INQ | 300 | 230, 200 | NO | C | NO | Balance-Inquiry

          скрины (номера скринов условные- к примеру)

          230- возмите вашиу карту
          209- возмите вашии деньги
          200- возмите ваш чек

          последовательность номеров скринов в столбце Screen и будет выводить нужные тебе скрины

          Комментарий


          • #6
            For --> tolik-mc & Skif777, огромное спасибо за отзывы!!

            Плывем дальше.

            В tbl-файле у меня перечислено четыре экрана 52, 51, 51, 50,
            в конфигурации они как-то описаны (картинки 052,051,050 или для eng 152, 151,150).


            100000050 P2050\150 P2150\
            100000051 P2051\151 P2151\
            100000052 P2052\152 P2152\


            строка Transaction Reply Command:
            4**номер_банкомата***ScrenN*000000013685A05201(I

            Очевидно на банкомат посылается один экран 52 ???
            А "до свидания" у нас на 50-том???
            Последний раз редактировалось Linux; 05.12.2002, 18:15.

            Комментарий


            • #7
              Linux

              Наверное стоит обратиться к документации по NDC+. Ответы на Ваши вопросы получаются очень обширные.

              В общих чертах:
              Банкоматный контроллер посылает на банкомат набор команд, возможно с указанием отображаемых экранов и с номером состояния на которое надо перейти (в свою очередь может содержать отображаемый экран). Если в ini файле не указан явно номер экрана который должен быть отображен то будет отображен экран указанный в состоянии.
              При ответе в общем случае на банкомат посылаются следующие команды: вернуть карту, набрать деньги, выдать деньги, напечатать чек, перейти на ## состояние. Или в укороченном варианте (например в случае операции "баланс"): вернуть карту, напечатать чек, перейти на ## состояние. Или еще короче (например при ошибки): перейти на ## состояние.
              В tbl-файле у меня перечислено четыре экрана 52, 51, 51, 50,
              00 | TRANSACTION | 300 | 230, 209, 209, 200 | NO | J,C | YES | Transaction completed successfully |
              - номера экранов которые будут переданы в соответствующих командах (соотвтетсвенно будут отображены при возврате карты (52), наборе и выдачи денег (51, 51), печати чека (53)). Далее банкомат перейдет на состояние указанной в том же tbl файле (300 - например Close State) и покажет указанный там экран (Ваше "Спасибо").
              картинки 052,051,050 или для eng 152, 151,150
              100000050 P2050 \ 150 P2150 \
              - делать различные экраны для различных языков по моему не очень удобно, проще пользоваться состоянием выбора идентификатора языка (языковой банк), а далее указывать это идентификатор при описании экрана. Одни и те же экраны на разных языках будут иметь одинаковые номера - удобней разбираться.
              С уважением, Дмитрий.

              Комментарий


              • #8
                У меня все похоже, но не работает.
                строка Transaction Reply Command:
                4**Номер_банкомата***ScrenN*000000013685A05201(I
                содержит только экран 052, но и он не отображается.
                Последний раз редактировалось Linux; 23.12.2002, 14:14.

                Комментарий


                • #9
                  Linux

                  Открываем NDC+ документацию и читаем.

                  4 **номер_банкомата** *ScrenN* 00000001 3685A0
                  52 01 (I
                  - интерпритация сообщения немного не верна. Должно быть:
                  4fs'номер_банкомата'fs'Message Sequence'fs'Next State ID'fs'Number of Type 1-4'fs'Transaction Serial Number'fs'Function Identifier'fs'Screen Number'fs'дальше не принципиально.
                  В Вашем случае *ScrenN* - 'Next State ID', так как 'Message Sequence' отсутствует.
                  Далее при команде 'A' - Eject card and dispense and print (Native mode only:
                  card before cash), 'Screen Number' (в Вашем случае 052) должен содержать: On a Card Before Cash transaction
                  this screen should contain two nested screen numbers for displaying
                  at different times during the transaction; S0 (screen 1) S0 (screen 2).

                  Удачи.

                  P.S. В документации много полезной информации, один раз потратив время обучению навигации в дальнейшем Вы избавитесь от множества проблем.
                  С уважением, Дмитрий.

                  Комментарий


                  • #10
                    Привет, Дмитрий.
                    По поводу *ScrenN* == 'Next State ID', это я второпях сморозил. А остальное понятно. Только пока не выходит ничего.

                    Например, сделал такие экраны:
                    100000052 053054
                    100000053 P2253\
                    100000054 P2254\

                    точнее
                    1000000520C>0E>0530E>054
                    1000000530C>1B>P22531B>\
                    1000000540C>1B>P22541B>\

                    никакого изображения (???)

                    Комментарий


                    • #11
                      Уважаемые Dimaka and Linux
                      А нет ли загвоздки в файле scr_tmpl.def ?
                      Ведь там тоже в зависимости от RC (responds code)
                      описываются скрины.

                      Комментарий


                      • #12
                        Skif777

                        А нет ли загвоздки в файле scr_tmpl.def ? - нет, в Transaction Replay было бы видно.

                        Linux

                        В нашей конфигурации используются команды 1B>P254 - опущен идентификатор "2".
                        Проверьте наличие самих экранов с указанными номерами. Я бы для начала попробовал вывести просто псевдографику в экранах 53 и 54.
                        Попробуйте увеличить уровень протоколирования и посмотреть трассу на банкомате (журнал работы приложения).
                        С уважением, Дмитрий.

                        Комментарий


                        • #13
                          В нашей конфигурации используются команды 1B>P254 - опущен идентификатор "2".
                          Да, нет. Двойка - это не идентификатор. Это номера картинок типа 253, 254.

                          Картинки я пытаюсь выводить (в отладочных целях), которые реально выводятся в других местах. Так что, на диске они есть.

                          Трассу на банкомате пока смотреть не умею (тестового банкомата у меня нет, а доступ к "боевым" ограничен). Мне бы через OpenWay что-нибудь.

                          Комментарий


                          • #14
                            Linux
                            Да, нет. Двойка - это не идентификатор. Это номера картинок типа 253, 254. - номер картинки трехзначный:
                            Pictures can be called up by the following control string:
                            Character !! Description !! Number of Characters
                            ESC ‘P’ !! Device Control String Introducer !! 2
                            ‘2’ !! Control String ID !! 1
                            parameter !! The picture number to be displayed. Range 0-999. !! Var (1-3)
                            ESC ‘\’ !! String Terminator !! 2

                            Через OpenWay остаются только эксперименты: вывести экраны 053 и 054 например при ожидании клиента, отобразить при транзакции (изменить экраны 053 и 054) псевдографический экран - то что вы раньше точно видели на банкомате.
                            С уважением, Дмитрий.

                            Комментарий


                            • #15
                              Если кому интересно, то последним действием я убрал из экрана 052 (1000000520C>0E>0530E>054) обновление экрана (0C>). Такая вот глупость у меня была.

                              Комментарий

                              Пользователи, просматривающие эту тему

                              Свернуть

                              Присутствует 1. Участников: 0, гостей: 1.

                              Обработка...
                              X