Export voor VeiligmetVerf.nl vanuit Exact Online

Verfgroothandels helpen schilders via VeiligmetVerf aan de juiste veiligheidsinformatiebladen. Hiervoor is ieder artikel gekoppeld aan een unieke VMV-code.

Met de volgende query kun je voor een of meerdere Exact Online administraties tegelijk voor alle pakbonnen van een dag een Excel-sheet maken voor VMV. VeiligmetVerf stuurt dan de informatiebladen naar de opgegeven e-mailadressen.

Voorbereidingen

In Exact Online dien je vooraf de volgende voorbereidingen te treffen:

  • Zet de VMV-code in een extra veld met naam “VMV” bij het artikel.
  • Koppel aan iedere afnemer een contactpersoon met de naam “VMV” en vul hierbij het gewenste e-mailadres.

Exact Online Query VeiligmetVerf

Draai onderstaande Invantive SQL query vanuit Invantive Query Tool of Invantive Control for Excel direct na het afronden van de pakbonnen voor een dag en laad de gegevens in VMV. Je geeft als SELECTIEDATUM de dag waarvan je de pakbonnen wilt hebben op.

Vul bij controle de eventueel ontbrekende e-mailadressen aan en voer ontbrekende contactpersonen op in Exact Online en in het spreadsheet.

Het resulterende spreadsheet met verfuitgiftes komt in de Documenten-map van de huidige gebruiker.

local remark 
local remark Exporteer pakbonregels van een dag naar een Excel sheet
local remark voor veilig met verf.
local remark
local remark Datumformaat voor SELECTIEDATUM: YYYYMMDD
local remark
local remark DD-MM-JJJJ  Int  Omschrijving
local remark ==================================================
local remark

local undefine SELECTIEDATUM

select '${SELECTIEDATUM}'

select to_char(sysdate, 'YYYYMMDD')

local define TIMESTAMP "${outcome:0,0}"

create or replace table vmvrpt@inmemorystorage
as
select gdy.divisionlabel
,      gdy.deliverynumber
,      gdy.deliverydate
,      gle.itemcode
,      active.code
,      active.name
,      ctt.firstname 
       FirstName
,      ctt.lastname
,      ctt.email
,      gle.salesordernumber
,      gle.salesorderlinenumber
,      ied.Value vmvcode
,      gle.itemdescription
,      gle.quantitydelivered
from   goodsdeliveries gdy
join   goodsdeliverylines gle
on     gle.division = gdy.division
and    gle.entryid  = gdy.entryid
left
outer
join   exactonlinerest..salesorders sor
on     sor.division    = gle.division
and    sor.ordernumber = gle.salesordernumber
left
outer
join   exactonlinerest..accounts active
on     active.division = sor.division
and    active.id       = sor.invoiceto
left
outer  
join   contacts ctt
on     ctt.division = active.division
and    ctt.account  = active.id
and    ctt.fullname = 'VMV'
left
outer
join   itemextrafields(gle.division, gle.item, to_date('20200101', 'YYYYMMDD')) ied
where  gdy.DeliveryDate = to_date('${SELECTIEDATUM}', 'YYYYMMDD')
order
by     gdy.divisionlabel
,      gdy.deliverynumber

select name
,      firstname
,      lastname
,      email
,      salesordernumber
,      vmvcode
,      deliverydate
from   vmvrpt@inmemorystorage
where  vmvcode is not null
order
by     name
,      email
,      salesordernumber

local export results as "${system:userdocumentsdirectory}\vmv-export-van-${SELECTIEDATUM}-op-${TIMESTAMP}.xlsx" format xlsx include headers