Текущее время: Чт, июл 24 2025, 07:16

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


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Insert в Hash
СообщениеДобавлено: Вт, дек 15 2009, 16:16 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, фев 04 2009, 13:46
Сообщения: 95
Пол: Мужской
Здравствуйте. Не нашел ничего по поиску.
Code:
LOOP AT it_factreal ASSIGNING <wa_factreal>.
    READ TABLE it_mainrep ASSIGNING <wa_mainrep> WITH TABLE KEY   matnr = <wa_factreal>-matnr kunnr = <wa_factreal>-kunnr.
    IF sy-subrc EQ 0.
      <wa_mainrep>-factr = wa_factreal-f_quan_iu_snm.
    ELSE.
      wa_mainrep-kunnr = wa_factreal-kunnr.
      wa_mainrep-matnr = wa_factreal-matnr.
      wa_mainrep-factr = wa_factreal-f_quan_iu_snm.
      wa_mainrep-name1 = wa_factreal-name1.
      wa_mainrep-maktx = wa_factreal-maktx.
      INSERT wa_mainrep INTO TABLE it_mainrep.
   ENDIF.
  ENDLOOP.

Почему в таблицу it_mainrep не вставляется строка wa_mainrep? Хотя строка заполняется. ( it_mainrep TYPE HASHED TABLE OF tt_mainrep WITH UNIQUE KEY matnr kunnr. )


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Insert в Hash
СообщениеДобавлено: Вт, дек 15 2009, 16:22 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
Определение типа tt_mainrep покажите. И какого типа wa_mainrep тоже покажите


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Insert в Hash
СообщениеДобавлено: Вт, дек 15 2009, 16:38 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, фев 04 2009, 13:46
Сообщения: 95
Пол: Мужской
Кодер написал(а):
Определение типа tt_mainrep покажите. И какого типа wa_mainrep тоже покажите

Структура:
Code:
TYPES:
BEGIN OF tt_mainrep,
  kunnr  TYPE kna1-kunnr,
  name1  TYPE kna1-name1,
  matnr  TYPE mara-matnr,
  maktx  TYPE makt-maktx,
  "auart  TYPE vbak-auart,
  mashk  TYPE p length 10 DECIMALS 0,
  planm  TYPE p length 10 DECIMALS 0,
  plans  TYPE p length 10 DECIMALS 0,
  factr  TYPE p length 10 DECIMALS 0,
  plssz  TYPE p length 10 DECIMALS 0,
  otkln  TYPE p length 10 DECIMALS 0,
  sdach  TYPE p length 10 DECIMALS 0,
  sda00  TYPE p length 10 DECIMALS 0,
  sda77  TYPE p length 10 DECIMALS 0,
  rea00  TYPE p length 10 DECIMALS 0,
  rea77  TYPE p length 10 DECIMALS 0,
  ossgd  TYPE labst, "P LENGTH 10 DECIMALS 0,
  osnzp  TYPE labst,"P LENGTH 10 DECIMALS 0,
END OF tt_mainrep.

Code:
DATA:           wa_mainrep       LIKE LINE OF it_mainrep.


Добавлю: что ошибки никакой не выводит...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Insert в Hash
СообщениеДобавлено: Вт, дек 15 2009, 16:56 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
Для отладки замените:
Code:
INSERT wa_mainrep INTO TABLE it_mainrep

на
Code:
INSERT wa_mainrep INTO TABLE it_mainrep ASSIGNING <wa_mainrep>


и посмотрите, что по результатам вставки будет в <wa_mainrep>.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Insert в Hash
СообщениеДобавлено: Вт, дек 15 2009, 16:59 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, июн 13 2007, 16:36
Сообщения: 585
Откуда: Belarus
Пол: Мужской
Не вставляется всегда или иногда ?
Если второе, то ключ маловат, расширить надо. Дублирующие записи не вставятся.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Insert в Hash
СообщениеДобавлено: Вт, дек 15 2009, 17:13 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
О! точно! просмотрел, что там чтение идет из филдсимбола <wa_factreal>, а вставка - из раб.области wa_factreal. А они скорее всего разные, судя по приведенному коду :-)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Insert в Hash
СообщениеДобавлено: Ср, дек 16 2009, 08:44 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, фев 04 2009, 13:46
Сообщения: 95
Пол: Мужской
Изображение
Строка заполнена перед инсертом:
Изображение
После Исерта Таблица все равно пустая:
Изображение

Строк не одной не добавилось :((

Я может чего, то не понимаю, объясните пожалуйста, сырому кодеру)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Insert в Hash
СообщениеДобавлено: Ср, дек 16 2009, 09:20 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, июн 13 2007, 16:36
Сообщения: 585
Откуда: Belarus
Пол: Мужской
Что после INSERT sy-subrc говорит ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Insert в Hash
СообщениеДобавлено: Ср, дек 16 2009, 09:53 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, фев 04 2009, 13:46
Сообщения: 95
Пол: Мужской
Разобрался.
Причина:
В Include_data объявлена таблица, как хэш с двумя ключами. После этого, запускается Form и сразу Loop обрабатывается эта хэш таблица с двумя ключами и инсертит... Далее последовательно в этом же Form, обрабытывается ряд Loop, и в одном из последних Loop, есть DATA где эта хэш таблица передэйтится в хэш с одним ключом. Так вот при входе в Form, оказывается, система ищет в нем все DATA и передэйтивает, соотвественно моя таблица стала с одним ключом сначала. Но странно почему когда я ее Read по двум ключам, ошибку не выдавала(((


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

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


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

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


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

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