17 октября, среда 09:57
Bankir.Ru

Объявление

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

Куда пишутся значения параметров для формулы действия начисления?

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

  • Куда пишутся значения параметров для формулы действия начисления?

    Напомните, плиз, Куда и чем пишутся конкретные значения параметров по объекту для формулы действия начисления? Сам набор параметров формулы лежит в tParam ( по FormulaID.)

  • #2
    Возьмем для примера начисление 302П_НачПроцСВек
    Структура возвращает данные в виде:
    select p.DealID,
    p.DealID ObjectID,
    p.DealID ID,
    p.SecurityID,
    p.GiverID,
    0 DealType,
    0 TransactType,
    @Date DealDate,
    @Date Date,
    @Date FixDate,
    0 FixCourse,
    0 DealTransactID,
    1 Confirmed,
    0 Num,
    0 CmsSum,
    p.Qty,
    p.Qty2,
    p.Qty3,
    Qty5 PercentBuy,
    case
    when @ChargeMode = 1 then @Date
    else @DateEndMonth
    end PrcCalcDate,
    p.IncSign,
    p.Course,
    p.Course1 as CourseNom,
    0 Acc52501,
    0 Rest52501,
    0 AccProc,
    0 RestProc,
    0 Acc50408,
    0 Rest50408,
    0 AccIncExp
    from pBillDiscount p WITH (NOLOCK INDEX=XIE1pBillDiscount)
    where p.SPID = @@spid
    and (@FlDiscBill = 1 or p.Qty > 0)
    order by p.GiverID, p.DealID
    /* at isolation read uncommitted */
    option (FORCE ORDER, LOOP JOIN, KEEPFIXED PLAN)
    В "формуле" действия имена всех входных параметров совпадают с полями этого "рекордсета" (думаю, они просто связаны по совпадению названий полей), откуда вытекает, что без изменения процедуры "структуры" добавить новый параметр в действие вроде бы нельзя?
    Последний раз редактировалось zbc; 11.07.2008, 15:15.

    Комментарий


    • #3
      А зачем вам это? Передать в действие параметр, которого нет в итоговом запросе структуры?

      Комментарий


      • #4
        zbc
        Тоже вопрос не очень понимаю. IMHO никуда эти значения не пишутся, есть два запроса, один - master, второй detail. Стандартная дельфовая фича.

        Комментарий


        • #5
          Сообщение от zbc Посмотреть сообщение
          Возьмем для примера начисление 302П_НачПроцСВек
          Структура возвращает данные в виде:

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

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

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

          declare @DE smalldatetime, @Branch DSIDENTIFIER

          select @DE = ateStart,
          @Branch = :BranchID

          select 1 as ObjectID,
          1 as ID,
          0 as DealID,
          1 as DealType,
          0 as TransactType,
          @DE as Date,
          '' as DealDate,
          '' as FixDate,
          1 as FixCourse,
          0 as DealTransactID,
          1 as Confirmed,
          0 as Qty,
          0 as Num,
          0 as CmsSum,
          @Branch as Branch


          ИМХО никуда они не пишутся

          Комментарий


          • #6
            Сообщение от Level Посмотреть сообщение
            А зачем вам это? Передать в действие параметр, которого нет в итоговом запросе структуры?
            Да.
            Хотя, в принципе, лучше видимо в действии нужное повытаскивать.

            Комментарий


            • #7
              Сообщение от CostYa
              наигрывайте в структуре любые параметры и добавляейте на результирующий селект значения этих параметров
              Ну, да, выходит, что так. Собственно,это и есть ответ на вопрос темы (которую лучше было бы озаглавить: как передать дополнительный параметр из структуры в действие?)

              Сообщение от loo Посмотреть сообщение
              zbc
              Тоже вопрос не очень понимаю. IMHO никуда эти значения не пишутся, есть два запроса, один - master, второй detail. Стандартная дельфовая фича.
              Причем тут мастер-детайл-то?
              Структура вываливает результирующий набор, далее действие курсором (или как-то там - с кодом дельфи мы работать не можем) построчно его обрабатывает. Передать параметр можно, добавив какое-то поле в "последний" запрос структуры, и описав его затем во входных параметрах действия.
              Суть в том, что я полагал, что должна быть какая-то табличка для значений этих передаваемых параметров, а оказалось, что ее нет.

              Комментарий


              • #8
                Причем тут мастер-детайл-то?
                Структура вываливает результирующий набор, далее действие курсором (или как-то там - с кодом дельфи мы работать не можем) построчно его обрабатывает.
                Сорри за путанницу. TDataSource, связанный с первым запросом является DataSource для второго запроса. Это стандартные объекты в Дельфи. Собственно также пишутся master-detail отчеты в QuickReport, мне термин нравится .

                Комментарий

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

                Свернуть

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

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