Текущее время: Вт, июл 22 2025, 21:51

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


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


Вопросы по ППМ (MRP) - сюда.
Вопросы по классификации - сюда.
Вопросы по входящим поставкам - сюда.



Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Нумерация партий
СообщениеДобавлено: Пт, сен 05 2008, 08:42 
Начинающий
Начинающий

Зарегистрирован:
Пт, сен 05 2008, 07:41
Сообщения: 13
Откуда: Украина
Здравствуйте.
Есть следующая ситуация.
Необходимо сделать чтобы при перемещении (311 вид движения) номер Принимающей партии был не таким как у передающей. А начинался например на 'Z'.
Порывшись в инете я сделал следующее:

В транзакции OMJJ для вида движения 311 поставил:

"Создавать новую партию" - "Автоматически/вручную с проверкой в USER EXIT"

С помощью транзакции CMOD поменял компонент exit_saplv01z_002 расширения SAPLV01Z:
Там я написал следующее:
Code:
*&---------------------------------------------------------------------*
*&  Include           ZXVBZU02
*&---------------------------------------------------------------------*

data numom type string.

if x_bncom-bwart = '311' .                  " Для 311 ВДв

  move x_bncom-umcha to numom.              " Номер партии который генерируется автоматически

  shift numom by 1 places.                  " Отрежем справа один символ

  concatenate 'Z' numom into new_charg.     " Приклеим 'Z'

endif.


Но при перемещении номер принимающей партии все равно копируется из номера передающей.
Помогите, пожалуйста, разобраться - как правильно сделать?

P.s. А как получить текущий номер именно из второго интервала нумераций партий?


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

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
ну определили вы new_charg, и что потом (по коду) с ним делаете?

в mseg-charg старое значение?

и кстати почему не используете badi?

_________________
Eritis sicut Deus, scientes bonum et malum...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 05 2008, 09:21 
Начинающий
Начинающий

Зарегистрирован:
Пт, сен 05 2008, 07:41
Сообщения: 13
Откуда: Украина
А расскажите, пожалуйста, как правильно сделать. Я до этого, доработки такого типа не осуществлял.


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

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
new_charg - это че за поле?
mseg-charg и mseg-umcha какое значение должны иметь?

_________________
Eritis sicut Deus, scientes bonum et malum...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 05 2008, 11:34 
Начинающий
Начинающий

Зарегистрирован:
Пт, сен 05 2008, 07:41
Сообщения: 13
Откуда: Украина
Немного порылся и если сделать вот так тогда вроде как получается:
Code:
*&---------------------------------------------------------------------*
*&  Include           ZXVBZU02
*&---------------------------------------------------------------------*

if x_bncom-bwart = '311' .                  " Для 311 ВДв

shift new_charg by 1 places.           " Отрежем справа один символ

concatenate 'Z' new_charg into new_charg.     " Приклеим 'Z'

endif.


А new_charg это отсюда:

Code:
function exit_saplv01z_002.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"  IMPORTING
*"     VALUE(X_BNCOM) LIKE  BNCOM STRUCTURE  BNCOM OPTIONAL
*"  EXPORTING
*"     REFERENCE(ALLOW_EXISTING_BATCH) TYPE  XFELD
*"  CHANGING
*"     VALUE(NEW_CHARG)
*"  EXCEPTIONS
*"      CANCELLED


В нем при входе в exit_saplv01z_002 оказывается следующий номер партии.

Но вот ведь задача. Теперь хотят сделать следующее:
Формировать номер принимающей партии следующим образом:

[Z][Номер передающей партии][Номер принимающей партии]

Как прикрепить к следующему номеру партии Z, я уже разобрался. Но вот как приклеить сюда еще и номер передающей партии???

Никак не могу найти момент где нужно подменить X_BNCOM-UMCHA.
Если он установлен то в exit_saplv01z_002 уже не заходит.

Подскажите, пожалуйста, как быть?


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

Зарегистрирован:
Чт, май 19 2005, 12:34
Сообщения: 1941
Откуда: НК
Пол: Мужской
Batman написал(а):
Но вот ведь задача. Теперь хотят сделать следующее:
Формировать номер принимающей партии следующим образом:

[Z][Номер передающей партии][Номер принимающей партии]

Рекурсия какая-то получается.

Еще стоит учитывать, что длина поля CHARG (как и UMCHA) всего 10 символов.

И не всегда стоит всё, что "хотят сделать", кидаться реализовывать.
Пусть сначала к окончательному варианту придут.

_________________
Eritis sicut Deus, scientes bonum et malum...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 05 2008, 12:08 
Начинающий
Начинающий

Зарегистрирован:
Пт, сен 05 2008, 07:41
Сообщения: 13
Откуда: Украина
SAA написал:
Batman написал(а):
Но вот ведь задача. Теперь хотят сделать следующее:
Формировать номер принимающей партии следующим образом:

[Z][Номер передающей партии][Номер принимающей партии]

Рекурсия какая-то получается.


Ну не совсем рекурсия.
Сейчас придумали следующее решение:
Привязывать к номеру партии определенные атрибуты. А потом в разрезе этих атрибутов просматривать остатки материалов.
Для этого им необходимо прослеживать партию. И они хотят видеть в номере партии - номер партии поступления от поставщика. Может я не сильно понятно объясняю, но для меня сейчас выбора нет. Сказали поменять вот я и пытаюсь.


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

Зарегистрирован:
Чт, фев 15 2007, 11:30
Сообщения: 1242
А зачем вам вообще менять номер? Если они хотят отслеживать партию, то пусть она и перемещается с этим же номером, тогда всегда будет понятно, что за партия и откуда она пришла?

_________________
Порой не так важно, что ты знаешь. Важнее, чему ты сможешь научиться!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 05 2008, 13:24 
Начинающий
Начинающий

Зарегистрирован:
Пт, сен 05 2008, 07:41
Сообщения: 13
Откуда: Украина
Dim(ka) написал(а):
А зачем вам вообще менять номер? Если они хотят отслеживать партию, то пусть она и перемещается с этим же номером, тогда всегда будет понятно, что за партия и откуда она пришла?


Пока что возможности объяснить это заказчикам у меня нет. Будет, но потом. А пока что нужно попробовать решить поставленную задачу.

Кто нибудь может подсказать:
как можно перехватить номер передающей партии и потом сгенерировать следующий и приклеить к нему 'Z'?


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

Зарегистрирован:
Чт, фев 15 2007, 11:30
Сообщения: 1242
Нерешаемых задач нет... :)
Но зачем чесать левой пяткой правое ухо?
Поверьте, что отслеживать партии таким образом будет в далнейшем очень неудобно... А если партия переместится несколько раз? Что у нее будет за номер?
Задача консультанта - показать как надо делать правильно, а не пытаться автоматизировать хаос...

_________________
Порой не так важно, что ты знаешь. Важнее, чему ты сможешь научиться!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 05 2008, 13:37 
Начинающий
Начинающий

Зарегистрирован:
Пт, сен 05 2008, 07:41
Сообщения: 13
Откуда: Украина
Dim(ka) написал(а):
Нерешаемых задач нет... :)
Но зачем чесать левой пяткой правое ухо?
Поверьте, что отслеживать партии таким образом будет в далнейшем очень неудобно... А если партия переместится несколько раз? Что у нее будет за номер?
Задача консультанта - показать как надо делать правильно, а не пытаться автоматизировать хаос...


Как я понял пытаются добиться следующей ситуации:

Приход материала на партию 00000065
Перемещение с центрального склада в цех:
00000065 -> Z6500066
Дальнейшее перемешщение перемещение из цеха в другой цех или на склад:
Z6500066 -> Z6500067

Всей задумки я пока что еще сам не понял. Я программист а задачу поставил консультант-внедренец. Ему наверное виднее.


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

Зарегистрирован:
Чт, фев 15 2007, 11:30
Сообщения: 1242
А если номер партии будет из 5-6 символов, как такие номера разместятся в 10 символах номера партии??? Что-то ваш внедренец мудрит - такие данные вряд ли кому будут полезны...
Это глупо, это неправильно, это неинформативно...

_________________
Порой не так важно, что ты знаешь. Важнее, чему ты сможешь научиться!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 05 2008, 13:55 
Начинающий
Начинающий

Зарегистрирован:
Пт, сен 05 2008, 07:41
Сообщения: 13
Откуда: Украина
Он хочет так сделать потому что есть способы просматривать остатки в разрезе партий. А так как к партиям он прицепил с помощью системы классов определенные атрибуты, то есть вариант просматривать остатки в разрезе этих атрибутов не изменяя стандартных отчетов.

Хотя мне кажется что правильнее было бы прицепить эти атрибуты к документу материала, а отчеты переделали бы как-нибудь.


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

Зарегистрирован:
Чт, фев 15 2007, 11:30
Сообщения: 1242
То, что вы пишите, логично и верно, но зачем для этого пдумывать какой-то непонятный номер партии??? Пусть сохраняется тот, который есть! В чем проблема? Вся та же аналитика доступна и понятно, что и откуда пришло.

_________________
Порой не так важно, что ты знаешь. Важнее, чему ты сможешь научиться!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 05 2008, 14:14 
Начинающий
Начинающий

Зарегистрирован:
Пт, сен 05 2008, 07:41
Сообщения: 13
Откуда: Украина
Спасибо за поддержку. Попытаюсь объяснить это нашему внедренцу.

Но если ради спортивного интереса как бы решалась данная задача?
как можно перехватить номер передающей партии и потом сгенерировать следующий и приклеить к нему 'Z'?


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.

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


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

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


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

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