Bij het uitrollen van de Exact Online projectenmodule kan het nodig zijn om eerder vastgelegde documenten te verplaatsen naar een ander documenttype zodat niet alle medewerkers daartoe toegang hebben.
Het is momenteel niet mogelijk om Share
te veranderen tussen “Prive” en “Administratie”.
De volgende code voor een Invantive Cloud applicatiemodule verplaatst alle documenten (projectgebonden en niet-projectgebonden) met het type “Bijlage” naar het type “Kopie van papieren bankafschrift”.
Voer hiervoor de volgende wijzigingen door:
- Maak hiervoor een applicatie aan of voeg de PSQL-module toe aan een bestaande applicatie.
- Pas de divisiecode van de administratie aan achter
use
en voor@eol
. - Pas eventueel het aantal documenten per keer aan van 100 naar het gewenste aantal. Normaliter kunnen maximaal 5.000 documenten per dag per administratie bijgewerkt worden.
Resultaat na het plakken van de ondersteunde PSQL-statements is:
declare
l_error_cnt pls_integer;
--
-- Stop after 10 errors.
--
c_error_max_cnt pls_integer := 10;
begin
cloud_http.set_use_template(true);
cloud_http.set_template_step_name('Move project documents - ' || to_char(sysdateutc) || '.');
--
-- Change division code.
--
use 123456@eol;
--
l_error_cnt := 0;
for r
in
( select dct.id
, dct.subject
from DocumentsIncremental@eol dct
where dct.type=183
--and dct.project is not null
limit 100
)
loop
begin
update ExactOnlineREST..Documents@eol
set type = 42 /* Bank statement file. */
where type = 183 /* Attachment. */
and id = r.Id
;
cloud_http.append_line_to_response_body_text
( '<p>Moved document ID '
|| to_char(r.Id)
|| ' from attachment to bank statement file ('
|| r.subject
|| ')</p>'
);
exception
when others
then
l_error_cnt := l_error_cnt + 1;
if l_error_cnt > c_error_max_cnt
then
raise;
end if;
cloud_http.append_line_to_response_body_text
( '<p>Moved document ID '
|| to_char(r.Id)
|| ' from attachment to bank statement file ('
|| r.subject
|| ') with error: '
|| sqlerrm
|| '</p>'
);
end;
end loop;
end;