������� ���������
�������� | ��� | �������� |
---|---|---|
OLDCLIENTID |
INTEGER |
|
NEWCLIENTID |
INTEGER |
|
CHANGECLIENTID |
INTEGER |
|
�������� ���������
�������� | ��� | �������� |
---|---|---|
UPDATINGCLIENTID |
INTEGER |
|
��������
(��� �������� ��� ��������� CHANGE_CLIENTID)
�����������
CREATE PROCEDURE CHANGE_CLIENTID(
OLDCLIENTID INTEGER,
NEWCLIENTID INTEGER,
CHANGECLIENTID INTEGER)
RETURNS (
UPDATINGCLIENTID INTEGER)
AS
begin
update ORDERLOAD
set PROVIDERID = :NEWCLIENTID
where (PROVIDERID = :OLDCLIENTID);
update ORDERLOAD
set OWNERID = :NEWCLIENTID
where (OWNERID = :OLDCLIENTID);
update IT
set PROVIDERID = :NEWCLIENTID
where (PROVIDERID = :OLDCLIENTID);
update IT
set OWNERID = :NEWCLIENTID
where (OWNERID = :OLDCLIENTID);
update INVOICES
set EXPORTERID = :NEWCLIENTID
where (EXPORTERID = :OLDCLIENTID);
update STORAGETICKETS
set OWNERID = :NEWCLIENTID
where (OWNERID = :OLDCLIENTID);
update CONTRACTS
set OWNERID = :NEWCLIENTID
where (OWNERID = :OLDCLIENTID);
update CONTRACTS
set PROVIDERID = :NEWCLIENTID
where (PROVIDERID = :OLDCLIENTID);
update CONTRACTS
set FORWARDERID = :NEWCLIENTID
where (FORWARDERID = :OLDCLIENTID);
update EXPORTACTS
set OWNERID = :NEWCLIENTID
where (OWNERID = :OLDCLIENTID);
update EXPORTACTS
set PROVIDERID = :NEWCLIENTID
where (PROVIDERID = :OLDCLIENTID);
if (:CHANGECLIENTID = 1) then begin
update CLIENTS
set CLIENTID = :NEWCLIENTID
where (CLIENTID = :OLDCLIENTID);
end
else begin
delete from CLIENTS
where (CLIENTID = :OLDCLIENTID);
end
UPDATINGCLIENTID = :NEWCLIENTID;
suspend;
end
![]() ![]() ![]() |