OEBS API: Обновляем альтернативное имя отделения поставщика
4 Декабрь 2012
Нет комментариев
Скрипт обновления альтернативного имени отделения поставщика.
В данном примере обнуляем альтернативное наименование.
SET SERVEROUTPUT ON SIZE 1000000
DECLARE
x_return_status varchar2(1);
x_msg_count number;
x_msg_data varchar2(4000);
--
l_vendor_site_rec AP_VENDOR_PUB_PKG.r_vendor_site_rec_type;
--
l_success_count NUMBER := 0;
l_failure_count NUMBER := 0;
l_all_count NUMBER := 0;
BEGIN
fnd_global.apps_initialize(1, 20639, 200); --Диспетчер кредиторов - Кредиторы
l_success_count := 0;
l_failure_count := 0;
l_all_count := 0;
-- цикл по отделениям
for s in (select t.vendor_site_id from ap_supplier_sites_all t
where 1=1
and t.vendor_site_code like '%XX%'
and vendor_site_code_alt is not null
)
loop
l_all_count := l_all_count + 1;
-- обнуляем альт.имя
l_vendor_site_rec.VENDOR_SITE_CODE_ALT := chr(0);
--
ap_vendor_pub_pkg.update_vendor_site(p_api_version => 1.0,
p_init_msg_list => fnd_api.g_true,
p_commit => fnd_api.g_false,
p_validation_level => fnd_api.g_valid_level_full,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_vendor_site_rec => l_vendor_site_rec,
p_vendor_site_id => s.vendor_site_id);
if (x_return_status <> 'S') then
l_failure_count := l_failure_count + 1;
fnd_msg_pub.count_and_get(p_encoded => fnd_api.g_false,
p_count => x_msg_count,
p_data => x_msg_data);
if x_msg_count = 1 then
dbms_output.put_line('ERROR vendor_site_id='||s.vendor_site_id
||'"; '|| x_msg_data );
else
FOR j IN 1 .. x_msg_count LOOP
x_msg_data := fnd_msg_pub.get(fnd_msg_pub.g_next,fnd_api.g_false);
dbms_output.put_line('ERROR vendor_site_id='||s.vendor_site_id
||'"; '|| x_msg_data );
END LOOP;
end if;
else
l_success_count := l_success_count + 1;
end if;
end loop; -- s
dbms_output.put_line('+--------------------------------------+');
dbms_output.put_line('UPDATE INFORMATION');
dbms_output.put_line(' All count : '||l_all_count);
dbms_output.put_line(' Update success : '||l_success_count);
dbms_output.put_line(' Update failure : '||l_failure_count);
dbms_output.put_line('+--------------------------------------+');
commit;
END;

Последние комментарии