Добрый день, уважаемые товарищи! Я только начинаю разбираться с CRM, так что заранее извиняюсь, если объясню не бизнес-терминами, а как в коде работает. Возникла такая проблема: С помощью запуска программы RSPPFPROCESS в отдельном jobе ежедневно планируется создавать ПВ(потенциальную возможность) копированием из другой созданной ПВ( удовлетворяющей определенным условиям) .Для этого был создан Action, который запускается для документов, появившихся в алв данной программы. Если искомая ПВ была сохранена с ошибками (например не заполнена орг. единица), то статус в строке алв с искомой ПВ этой программы горит красным светофором и в логе появляется сообщение: ID CRM_COPY No = 022 "Предшествующий объект XXXXXX имеет статус "С ошибками", новая ПВ не создается. При этом, если копировать руками в портале CRM_UI в разделе "Потенциальные возможности", то все создается нормально. Надо, чтобы через программку RSPPFPROCESS можно было копировать ПВ из ПВ, созданной с ошибками.
Когда копируем руками, проверки после которой выводится эта ошибка, не происходит, т.к. в коде не выполняется условие CRMT_DOC_FLOW_EXTDT-vona_kind CA ' ABCFGIJ' (фм CRM_COPY_CHECK_H_OW строка 160) . Здесь vona_kind = "D" (заполняется в CL_CRM_ADMINH_RUN_BTIL->COPY_HEADER , и там вызывается фм 'CRM_COPY_PROCESS_PREPARE' с передачей константы gc_vona_kind-copy_noupdate_nodf (D). Когда запускается через программу то vona_kind = "A" (заполняется в CL_ACTION_EXECUTE->COPY_DOCUMENT в фме 'CRM_COPY_PROCESS_PREPARE', когда туда подается константа iv_vona_kind = gc_vona_kind-copy_update ("A")).
По итогам заполняется таблица lt_doc_flow, на основе чтения из которой в фме CRM_COPY_CHECK_H_OW идет проверка на vona_kind.
Может быть, кто-нибудь знает, можно ли как-то это значение подменить, и на какой стадии? Консультант предложил в бади EXEC_METHODCALL_PPF как-то передать это значение через контейнер, но не очень понимаю, как. Заранее благодарна, если подскажите. Спасибо.
|
|