Atualizar informações de campos das distribuições

Nesse post irei mostrar como é possível atualizar informações das entregas via API, essa alternativa pode ajudar quando há integrações e o procedimento é feito por um outro sistema sem precisar entrar na tela das distribuições.

Sem título

DECLARE
x_delivery_info WSH_DELIVERIES_PUB.delivery_pub_rec_type;
x_return_status VARCHAR2 (10);
x_msg_count NUMBER;
x_msg_data VARCHAR2 (2000);
x_msg_details VARCHAR2 (3000);
x_msg_summary VARCHAR2 (3000);
x_del_id NUMBER;
x_name VARCHAR2 (100);
init_msg_list VARCHAR2 (30);
fail_api EXCEPTION;
BEGIN

FND_GLOBAL.apps_initialize (1139, 21623, 660);

MO_GLOBAL.set_policy_context ('S', 81);
MO_GLOBAL.init ('ONT');

x_delivery_info.gross_weight := 10000;
x_delivery_info.net_weight := 9500;
x_delivery_info.delivery_id := TO_NUMBER(19051);
x_delivery_info.name := '19051';
x_delivery_info.last_update_date := SYSDATE;
x_delivery_info.last_updated_by := FND_GLOBAL.user_id;

WSH_DELIVERIES_PUB.create_update_delivery( p_api_version_number => 1.0,
p_init_msg_list => init_msg_list,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_action_code => 'UPDATE',
p_delivery_info => x_delivery_info,
x_delivery_id => x_del_id,
x_name => x_name);

DBMS_OUTPUT.put_line (x_return_status);
DBMS_OUTPUT.put_line (x_msg_count);
DBMS_OUTPUT.put_line (x_msg_data);
DBMS_OUTPUT.put_line (x_del_id);
DBMS_OUTPUT.put_line (x_name);

IF (x_return_status <> WSH_UTIL_CORE.G_RET_STS_SUCCESS) THEN
RAISE fail_api;
ELSE
DBMS_OUTPUT.put_line ('Status: ' || x_return_status);
END IF;
EXCEPTION WHEN fail_api THEN
WSH_UTIL_CORE.get_messages ('Y',x_msg_summary,x_msg_details,x_msg_count);

IF x_msg_count > 1 THEN
DBMS_OUTPUT.put_line ('Message Data : ' || x_msg_data);
ELSE
x_msg_data := x_msg_summary;
DBMS_OUTPUT.put_line ('Message Data : ' || x_msg_data);
END IF;
END;

Após executar a API, o campo foi atualizado.

Sem título

Deixe uma resposta

Powered by WordPress.com. Tema: Baskerville 2 por Anders Noren

Acima ↑

%d blogueiros gostam disto: