Текущее время: Чт, мар 28 2024, 19:21

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: SAP Query на ЛБД ADA и дополнительное поле
СообщениеДобавлено: Чт, апр 16 2015, 08:58 
Специалист
Специалист

Зарегистрирован:
Пн, мар 12 2012, 09:38
Сообщения: 170
Всем добрый день.
Столкнулся с таким поведением, хотелось бы узнать корректно ли оно?
Пытаюсь добавить свое поле в папку ANLAV, которое будет просто выводит имя по табельнику ANLAV-PERNR
Изображение
Code:
SELECT SINGLE ENAME FROM PA0001 INTO MATOTVLASTNAME
  WHERE
            PERNR = ANLAV-PERNR
        AND BEGDA <= BERDATUM
        AND ENDDA >= BERDATUM.

Сгенерировал, в запросе добавил вывод, но получается следующая картина. Если по данному ОС нет записей в ANCLV, т.е. программа в блок GET ANCLV не заходит, то и мое дополнительное поле не выводится, хотя на момент выборки из ANLAV оно заполняется. Как удалось найти, это из-за того что дополнительное поле ложится в группу полей %fg02(extract в которую происходит в операции GET ANLCV, куда мы не попадаем, т.к. данных нет), тогда как в выборка из anlav ложится в %fg01.
Наглядно видно, какие поля система пихает в первую группу в методе вывода:
Code:
loop.
  %data_selected = 'X'.
  at %fg01.
    %znr = '01'.
    %zgr = '01'.
    %cline = %cline + 1.
    perform %clear02.
    %g00-ANLAV-ANLN1 = ANLAV-ANLN1.
    %g00-ANLAV-INVNR = ANLAV-INVNR.
    %g00-ANLAV-LVTNR = ANLAV-LVTNR.
    %g00-ANLAV-LEAFI = ANLAV-LEAFI.
    %g00-ANLAV-PERNR = ANLAV-PERNR.
    %g00-ANLAV-CAUFN = ANLAV-CAUFN.
    %g00-ANLAV-LVDAT = ANLAV-LVDAT.
    %g00-ANLAV-LKDAT = ANLAV-LKDAT.
    %g00-ANLAV-LEABG = ANLAV-LEABG.
...
at %fg02.
    %znr = '02'.
    %zgr = '02'.
    %cline = %cline + 1.
    if %znr > %lznr.
      read table %g00 index %glline.
    endif.
    perform %clear03.
    %g00-ANLCV-ANSW_GJE = ANLCV-ANSW_GJE.
    %g00-T093B-WAERS-0201 = T093B-WAERS.
    %g00-ANLCV-NAFA_GJE = ANLCV-NAFA_GJE.
    %g00-T093B-WAERS-0202 = T093B-WAERS.
    %g00-ANLCV-BCHWRT_GJE = ANLCV-BCHWRT_GJE.
    %g00-T093B-WAERS-0203 = T093B-WAERS.
    %g00-TEXT_ANLAV_ANLN1 = TEXT_ANLAV_ANLN1.
    %g00-TEXT_ANLAV_LEAFI = TEXT_ANLAV_LEAFI.
    %g00-MATOTVLASTNAME = MATOTVLASTNAME.
    %g00-TEXT_ANLAV_CAUFN = TEXT_ANLAV_CAUFN.

В итоге имеем что хоть поле у нас и выбралось, но его экстракт не происходит. Почему так происходит, почему бы не добавить наше дополнительное поле в первую группу вместе с ANLAV? Как от этого избавится? А то получается табельник у нас выводится, а текст к нему нет...


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: SAP Query на ЛБД ADA и дополнительное поле  Тема решена
СообщениеДобавлено: Чт, апр 16 2015, 09:48 
Специалист
Специалист

Зарегистрирован:
Пн, мар 12 2012, 09:38
Сообщения: 170
Разобрался...
Перед этим полем в SAP Query выводилось 4 поля из ANLCV, мне и в голову не могло прийти, что если перетащить это поле на перед ними, то оно начнет корректно выводиться... Аналогичная проблема из текстовыми полями(например TEXT_ANLAV_ANLN1).
Если поместить его после полей из других таблиц/структур и в них не будет данных, то поля мы не увидим. Перетащив же его в блок полей anlav - все станет нормально.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB