14 ноября, среда 19:06
Bankir.Ru

Объявление

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

Парсерная функция.

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

  • Парсерная функция.

    Захотелось мне создать парсерную функцию.
    По типу НОМЕР_СЧЕТА из pp-pbase.p
    А как её зарегистрировать?
    Положим назвал я её НОМЕР_СЧЕТА9. Лезть в бисовские процедуры мне не хочется. Поместил функцию в отдельный файл.
    Прописал вызов в 1-м реквизите 22-го шаблона транзакции _CBL_ACT.
    При запуске транзакции Бисквит мне объсняет, что знать он не знает никакой НОМЕР_СЧЕТА9.
    Как бы их познакомить?

  • #2
    Самое простое решение - поместить её в специально для этого придуманный файл pp-ptmp.p и в списке библиотек транзакции добавить ptmp

    Ну или можно регистрировать свои собственные библиотеки, здесь кто-то недавно рассказывал, как. Хотя я так и не понял - зачем.
    /kiv

    Комментарий


    • #3
      Спасибо. pp-ptmp.p работает.
      Но всё же я предпочёл бы зарегистрировать свою библиотечку.
      Дело в том, что я писатель нижестоящего уровня. И если, вдруг, вышестоящему писателю захочется попользовать pp-ptmp.p, получится конфуз.
      Попробывл включить свою библиотеку в классификатор "Библиотеки парсерных функций", но действия это не возымело.
      Порылся по форуму. Не нашёл.

      Комментарий


      • #4
        Сообщение от TimoV Посмотреть сообщение
        Спасибо. pp-ptmp.p работает.
        Но всё же я предпочёл бы зарегистрировать свою библиотечку.
        Дело в том, что я писатель нижестоящего уровня. И если, вдруг, вышестоящему писателю захочется попользовать pp-ptmp.p, получится конфуз.
        Попробывл включить свою библиотеку в классификатор "Библиотеки парсерных функций", но действия это не возымело.
        Порылся по форуму. Не нашёл.
        Между собой договориться на инклюд {filial01.i} всегда можно

        http://dom.bankir.ru/showthread.php?...51#post2635451
        /kiv

        Комментарий


        • #5
          Имеется в виду это?
          Сообщение от bulklodd Посмотреть сообщение
          Добавить в классификатор Библиотеки (Администрирование -> Настройки -> Классификаторы)
          Пробовал включить свою библиотеку в этот классификатор.
          Вижу там её, но если провалится внутрь (Enter -> функции), там пусто.
          при попытке запуска транзакции, использующей функции из моей библиотеки, натыкаюсь на сообщение
          Ошибка загрузки библиотеки [pvrshb] (pars06)

          Если переименовать мою pp-* в pp-ptmp.p, всё работает.

          Комментарий


          • #6
            https://trac.mysvn.ru/Dmitry/BFC/wik...A4%D0%A1%D0%A2

            Комментарий


            • #7
              За ссылку спасибо. Да только там какие то не те парсерные функции.
              Уж коли про то речь зашла, расскажите, кто знает.
              Я за прототип взял "НОМЕР_СЧЕТА", описанную в классификаторе "Библиотеки -> pbase" и определенную в pp-pbase.p.
              Есть функция "НомСчета" определенная в parsacct.def, где объявленная, не знаю.
              Есть extrpars.fun для заточенный под самопал.
              Способы объявления и описания функций разные. А какая между ними разница?

              Комментарий


              • #8
                Сообщение от TimoV Посмотреть сообщение
                Способы объявления и описания функций разные. А какая между ними разница?
                "Универсальные транзакции" и "стандартные транзакции". extrpars.fun - это стандартные.
                /kiv

                Комментарий


                • #9
                  Сообщение от TimoV Посмотреть сообщение
                  Если переименовать мою pp-* в pp-ptmp.p, всё работает.
                  Есть ограничение на длину имени библиотеки, максимум pp-pabcd.p , где abcd - любой набор букв.
                  Т.е. пойдет pp-plala.p или pp-pbubu.p , а вот pp-plalala.p не пойдет.

                  Комментарий


                  • #10
                    Сообщение от cypok Посмотреть сообщение
                    Есть ограничение на длину имени библиотеки, максимум pp-pabcd.p , где abcd - любой набор букв.
                    Т.е. пойдет pp-plala.p или pp-pbubu.p , а вот pp-plalala.p не пойдет.
                    Воистину так. Зарегестрировалось. Спасибо.

                    Комментарий

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

                    Свернуть

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

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