Текущее время: Ср, июл 23 2025, 08:34

Часовой пояс: 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 часа


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

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


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

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