Текущее время: Пн, авг 04 2025, 09:31

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Batch Input ошибка - длина значения ввода больше поля экрана.
СообщениеДобавлено: Ср, янв 16 2008, 18:27 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, сен 10 2007, 23:29
Сообщения: 453
Откуда: и куда?
Пол: Мужской
Меняю батчевой программой 8 инфотип. Добавляю строку в q0008 приблизительно так:
Code:
DATA: oklad type q00008-betrg.
....
rp_provide_from_last p0008 space pn-begda pn-endda.

SELECT SINGLE * FROM t510 WHERE molga = '36' AND begda <= p0008-begda AND endda >= p0008-endda AND trfar = p0008-trfar
                              AND trfgb = p0008-trfgb  AND trfgr = p0008-trfgr AND trfst = p0008-trfst.


oklad = t510-betrg.

perform bdc_dynpro      using 'MP000800' '2000'.
perform bdc_field       using 'BDC_CURSOR'
                              'P0008-BEGDA'.
perform bdc_field       using 'BDC_OKCODE'
                              '=INSL'.
perform bdc_field       using 'BDC_CURSOR'
                              'Q0008-LGART(01)'.
perform bdc_field       using 'BDC_CURSOR'
                              'Q0008-BETRG(01)'.
perform bdc_field       using 'Q0008-LGART(01)'
                              '0010'.
perform bdc_field       using 'Q0008-BETRG(01)'
                              oklad.
....


однако в ходе выполнения программы вываливается такое вот сообщение:
Code:
S Поле Q0008-BETRG (1) (длина значения ввода больше поля экрана)

И собственно все, дальше программа не выполняется :(
Кто с таким сталкивался? Что это???


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 16 2008, 18:30 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
А что из этого непонятно: длина значения ввода больше поля экрана? ;)

Кстати, сообщение с типом S. Т.е. батч выполнить можно.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 16 2008, 18:34 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, сен 10 2007, 23:29
Сообщения: 453
Откуда: и куда?
Пол: Мужской
В том то и прикол что не может оно быть больше! Ибо в поле Q0008-BETRG (1) записывается переменная типа Q0008-BETRG :shock:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 16 2008, 20:38 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
msv написал:
В том то и прикол что не может оно быть больше! Ибо в поле Q0008-BETRG (1) записывается переменная типа Q0008-BETRG :shock:

1) Зачем такой изврат, когда с инфотипами гораздо удобнее работать через ФМ?
2) Она реально длиннее - посмотрите длину _текстовой_ переменной FVAL и учтите что числовые переменные копируются в текстовые с выраниванием _вправо_.
Кстати, по этой-же причине у Вас могут быть проблемы с десятичным раздилителем - копирование выполняется во внутреннем формати, а, если мне не изменяет память, данные для пакетного ввода должны сохранятться во внешнем.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 16 2008, 20:50 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
msv написал:
переменная типа Q0008-BETRG


Вообще-то тип переменной у вас q00008-betrg (еще один нолик)...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, янв 17 2008, 07:46 
Ассистент
Ассистент

Зарегистрирован:
Ср, янв 19 2005, 17:36
Сообщения: 27
Тип вводимого поля с экрана всегда символьный. Поэтому вместо такого декларирования DATA: oklad type q00008-betrg.
Нужно DATA: oklad(нужная длина).
[/code]


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, янв 17 2008, 10:26 
Директор
Директор

Зарегистрирован:
Чт, июн 21 2007, 09:01
Сообщения: 904
Откуда: УЖ 15/2
Пол: Мужской
Helga написал(а):
Тип вводимого поля с экрана всегда символьный. Поэтому вместо такого декларирования DATA: oklad type q00008-betrg.
Нужно DATA: oklad(нужная длина).
[/code]

+
Code:
*DATA: oklad type q00008-betrg.
DATA: oklad type char LENGHT 18.
...
*oklad = t510-betrg.
WRITE t510-betrg TO oklad CURRENCY валюта.
....
perform bdc_field       using 'Q0008-BETRG(01)'
                              oklad.


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

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


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

Сейчас этот форум просматривают: Ahrefs [Bot]


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

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