Sapforum.Biz

Инструменты => ABAP - Инструментальные средства => Тема начата: sergiucz от Сентябрь 30, 2012, 06:19:13 pm

Название: Как изменить BKPF-BKTXT в созданном документе
Отправлено: sergiucz от Сентябрь 30, 2012, 06:19:13 pm
Добрый день господа гуру!
Появилась задача при выводе на печать Налог Наклад. В это поле BKPF-BKTXT вставлять ИДН номер накладной .
То есть , каждый лист имеет свои уникальный номер.
И он известен когда дается на печать.

Каким способом мне надо изменить это поле в таблице BKPF.

Заранее спасибо
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: Dmitriy от Сентябрь 30, 2012, 06:47:11 pm
You are not allowed to view links. Register or Login
Добрый день господа гуру!
Появилась задача при выводе на печать Налог Наклад. В это поле BKPF-BKTXT вставлять ИДН номер накладной .
То есть , каждый лист имеет свои уникальный номер.
И он известен когда дается на печать.

Каким способом мне надо изменить это поле в таблице BKPF.

Заранее спасибо
Самый простой способ, это пакетный ввод на тр. FB02. Процедуру запускайте по факту успешной печати, допустим.
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: sergiucz от Сентябрь 30, 2012, 07:39:21 pm
You are not allowed to view links. Register or Login
Самый простой способ, это пакетный ввод на тр. FB02. Процедуру запускайте по факту успешной печати, допустим.

спасибо за ответ !!
Вопрос решил . Нашел
Нашел


CALL FUNCTION 'FI_HEADER_UPDATE'
TABLES
t_bkpf =
.
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: Dmitriy от Сентябрь 30, 2012, 11:04:36 pm
You are not allowed to view links. Register or Login
спасибо за ответ !!
Вопрос решил . Нашел
Нашел
Код: You are not allowed to view links. Register or Login
CALL FUNCTION 'FI_HEADER_UPDATE'
TABLES
t_bkpf = .
Вы уверены? А что там внутри этого ФМ и вид у него (в свойствах) какой? Поле BKTXT не только в BKPF, посмотрите по ЭД.

P.S. В опциях отправки сообщения используйте тег "код", если таковой требуется, кнопка "#".
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: Uukrul от Октябрь 02, 2012, 12:41:15 am
Переведу ответ Димы если кто не понял...
You are not allowed to view links. Register or Login
спасибо за ответ !!
Вопрос решил . Нашел
Нашел
Ничего вы не нашли, и использовать данный ФМ категорически запрещено для тех целей которые вы собрались.
You are not allowed to view links. Register or Login
CALL FUNCTION 'FI_HEADER_UPDATE'
TABLES
t_bkpf =
Это модуль обновления, вызываемый в контексте стандартной работы обновления данных при проводке документов, там в тексте только вот это:
Код: You are not allowed to view links. Register or Login
FUNCTION FI_HEADER_UPDATE.
*"----------------------------------------------------------------------
*"*"Verbuchungsfunktionsbaustein:
*"
*"*"Lokale Schnittstelle:
*"       TABLES
*"              T_BKPF STRUCTURE  BKPF
*"----------------------------------------------------------------------


  UPDATE BKPF FROM TABLE T_BKPF.

  IF SY-SUBRC NE 0.
    MESSAGE A247(FQ) WITH 'BKPF'.
  ENDIF.

ENDFUNCTION.
Так что ничего вы не нашли, это прямой апдейт таблиц, которым может пользоваться только стандартный функционал системы. Я в FI не силен, но кажется там BAPI подходящей нет и придется воспользоватся предложением Дмитрия, по поводу формирования пакетного ввода.
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: Dmitriy от Октябрь 02, 2012, 01:24:21 am
Спасибо за код ФМ, нет под рукой системы. Подозрение закралось по названию и усилилось после поиска в гугле.:)
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: sergiucz от Октябрь 09, 2012, 11:24:21 am
Добрый день .
Спасибо всем за интерес .
Я делаю так .

      SELECT * INTO  CORRESPONDING FIELDS OF TABLE lt_bkpf FROM bkpf WHERE  belnr EQ pa_belnr AND bukrs EQ pa_bukrs.
      READ TABLE lt_bkpf INDEX 1 .
      lt_bkpf-bktxt = pa_fnum.
      MODIFY lt_bkpf INDEX 1.

      CALL FUNCTION 'FI_HEADER_UPDATE'
        TABLES
          t_bkpf = lt_bkpf.

 я же не меняю ничего кроме  bkpf-bktxt
Пока все работает нормально . Глюков нет

Но если говорите что лучше через пакетник то я переделаю программу .
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: e.gorscov от Октябрь 09, 2012, 11:27:10 am
Точно  такая же проблема есть  и для MKPF. Ее  можно  обновлять  бапихой?
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: sergiucz от Октябрь 09, 2012, 01:11:34 pm
You are not allowed to view links. Register or Login
Спасибо за код ФМ, нет под рукой системы. Подозрение закралось по названию и усилилось после поиска в гугле.:)

Да просто сидели и ждали машины на рампе пока я искал в гоогле.
Просто у нас Тока запустилась система и в тот день я узнал что надо это делать.
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: NachDenken от Октябрь 10, 2012, 01:03:59 pm
You are not allowed to view links. Register or Login
Добрый день .
Спасибо всем за интерес .
Я делаю так .

      SELECT * INTO  CORRESPONDING FIELDS OF TABLE lt_bkpf FROM bkpf WHERE  belnr EQ pa_belnr AND bukrs EQ pa_bukrs.
      READ TABLE lt_bkpf INDEX 1 .
      lt_bkpf-bktxt = pa_fnum.
      MODIFY lt_bkpf INDEX 1.

      CALL FUNCTION 'FI_HEADER_UPDATE'
        TABLES
          t_bkpf = lt_bkpf.

 я же не меняю ничего кроме  bkpf-bktxt
Пока все работает нормально . Глюков нет

Но если говорите что лучше через пакетник то я переделаю программу .
belnr EQ pa_belnr AND bukrs EQ pa_bukrs ключ нужно полный указывать
А может глянуть open FI event какой подходящий есть ?
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: Uukrul от Октябрь 11, 2012, 12:22:07 am
You are not allowed to view links. Register or Login
я же не меняю ничего кроме  bkpf-bktxt
Пока все работает нормально . Глюков нет
Ну в таком случае делайте просто: UPDATE BKPF FROM TABLE T_BKPF, хотя нет точнее будет делать UPDATE bkpf SET bktxt = pa_fnum WHERE <ключ записи> и всех делов, это раз.

Теперь два - рекомендации лучших соба-саповодов. НИКОГДА И НИ ПРИ КАКИХ СЛУЧАЯХ НЕ ОБНОВЛЯЙТЕ ДАННЫЕ ТАБЛИЦ СИСТЕМЫ ПРЯМЫМИ АПДЕЙТАМИ (тот 0,0001% когда это нужно сделать, сделайте молча, тихо и никому, никогда об этом не рассказывайте!!!)
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: sergiucz от Октябрь 11, 2012, 09:25:45 am
Всем спасибо!
Сделал через пакетник.
 

Uukrul Спасибо за советы :) Буду строго соблюдать :)


Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: Sed0Y от Октябрь 11, 2012, 03:44:14 pm
Если уже и решили делать UPDATE, то создайте доп структуру в этой таблице с своим полем и обновляйте его, и там где вам нужно подтягивайте это поле....

P.S. В некоторых случаях я так делаю(только не для этой таблицы)...
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: Uukrul от Октябрь 20, 2012, 07:31:45 pm
You are not allowed to view links. Register or Login
Если уже и решили делать UPDATE, то создайте доп структуру в этой таблице с своим полем и обновляйте его, и там где вам нужно подтягивайте это поле....
Ну тогда наверное лучше завести свою таблицу, смысла добавлять поле именно в BKPF не вижу, размер таблицы вырастет существенно, так как FI-документов обычно очень много. А стандартные отчеты все равно видеть это поле не будут. Так что смысла особого нет.
Название: Re: Как изменить BKPF-BKTXT в созданном документе
Отправлено: sergiucz от Октябрь 21, 2012, 02:55:10 pm
You are not allowed to view links. Register or Login
Ну тогда наверное лучше завести свою таблицу, смысла добавлять поле именно в BKPF не вижу, размер таблицы вырастет существенно, так как FI-документов обычно очень много. А стандартные отчеты все равно видеть это поле не будут. Так что смысла особого нет.

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