Failų iškėlimas į MS Sharepoint - diegimas
Konsultantams ir atstovams
- Sukuriama „Daemon App“ aplikacija Azure portale.
- Sugeneruojami MS sharepoint API prisijungimai.
- Suteikiami API leidimai (API Permissions).
- mc_file_upload.app įkeliamas į RIV_GAMA katalogą ir aprašomas sistemos INIT.
- Aprašomi MS sharepoint prisijungimo parametrai.
- Aprašomi MS sharepoint katalogai.
- Failų perkėlimas iš Rivile GAMA duomenų bazės į aprašytus MS sharepoint katalogus.
- Failų perkėlimas iš Rivile GAMA duomenų bazės į aprašytus MS sharepoint katalogus naudojant "Scheduler".
Sukuriama „Daemon App“ aplikacija Azure portale
Prisijungiama prie Azure portalo: Azure Portal.
Azure portale pasirenkama Azure Active Directory > App registrations.
Atsidariusiame lange reikia sukurti naują aplikacijos registraciją:
- New registration.
- Įvedamas pavadinimas (pvz., „SharePoint Daemon App“).
- Redirect URI galima praleisti.
- Paspaudžiama Register.
Po aplikacijos sukūrimo automatiškai sugeneruojami Application (client) ID ir Directory (tenant) ID. Šie ID bus reikalingi aprašant "Saugyklos parametrus" Rivile GAMA programoje.
Sugeneruojami MS sharepoint API prisijungimai
Sukurtai aplikacijai reikia sugeneruoti slaptą raktą "Client secret":
- Pasirenkama Certificates & secrets > Client secrets > New client secret.
- Įvedamas pavadinimas ir nustatoma galiojimo trukmė.
- Paspaudus Add, pasirodys sukurtas slaptas raktas – nukopijuokite jį.
Raktas matomas tik kartą, būtinai jį nusikopijuokite, kitu atveju reikės kurti naują raktą.
Suteikiami API leidimai (API Permissions)
- Pasirenkama API Permissions > Add a permission > Microsoft Graph > Application permissions.
- Pridedamos teisės:
- Sites.ReadWrite.All – jei norite skaityti ir rašyti „SharePoint“ failus.
- Files.ReadWrite.All – jei norite valdyti failus.
Administratoriaus sutikimas:
- Pasirenkama Grant admin consent for [Your Tenant Name], kad patvirtintumėte leidimus visam tenantui.
mc_file_upload.app įkėlimas į RIV_GAMA katalogą ir sistemos INIT aprašymas
Iš Konsultantams ir atstovams parsisiunčiamas failas "mc_file_upload.app" ir įrašomas RIV_GAMA katalogą.
Po failo įrašymo Rivile GAMA programoje užprogramuojamas sistemos "INIT":
m.loFile_upload=MC_FILE_UPLOAD()
m.loFile_upload.test=.t. && test perkėlimas (skirta perkelti tik nurodytą failų kiekį)
m.loFile_upload.test_file=10 && perkeliamų failų maksimalus kiekis
MC_FILE_UPLOAD('MENIU') && meniu atvaizdavimas
Aprašius Sistemos INIT, būtina iš naujo paleisti programą !
Įėjus į programą, meniu juostoje atsiranda "Failų saugykla".
Aprašomi MS sharepoint prisijungimo parametrai
Failų saugykla -> Saugyklų parametrai
Rivile GAMA programoje lange "Saugyklų parametrai" aprašomi MS sharepoint saugyklos prisijungimai.
Prisijungimai "Tenant ID", "MS client ID", "MS client secret" buvo gauti prieš tai, aprašant „Daemon App“ aplikaciją Azure portale
"Tenant pav" ir "Site pav'' galima įrašyti ranka arba paspausti pieštuko simbolį: jei užpildyta "MS nuoroda", šie laukai bus užpildyti automatiškai iš nurodytos nuorodos.
Aprašomi MS sharepoint katalogai
Failų saugykla -> Katalogų nustatymai
Rivile GAMA programoje lange "Katalogų nustatymai" aprašomi MS sharepoint saugyklos katalogai ir failų atrinkimo logika.
Formos laukų aprašymas:
- Kodas - įvedamas unikalus kodas.
- Tipas - iš sąrašo pasirenkamas saugyklos tipas.
- Parametrai - iš "Saugyklų parametrai" pasirenkamas ir įvedamas saugyklos parametro kodas .
- Modulis - iš sąrašo pasirenkamas modulis, jei sąraše nėra reikiamo modulio, tuomet galima pasirinkti "Kita".
- Duomenų bazė - automatiškai užpildomas duomenų bazės lentelės pavadinimas pagal pasirinktą modulį.
- Dokumentas/Dokumentai - nurodoma iš kur bus paimami dokumentai: "Dokumentas", "Dokumentai", "PDF ataskaita".
- Pavadinimas - pavadinimas.
- Aktyvus - pažymima ar katalogo nustatymas aktyvus, ar ne.
- MS katalogas - paspaudus nuskaitymo mygtuką gaunamas katalogų sarašas pagal saugyklos aprašytą parametrą "Parametrai".
- MS katalogo ID - automatiškai užsipildo pasirinkus katalogą "MS katalogas".
- SQL sąlyga - sąlyga, pagal kurią atrenkami failai.
- Jei "Modulis" yra "Kita" ir "Dokumentas/Dokumentai" - "Dokumentas", tuomet dalyvauja tik B00_IMP lentelė.
- Jei "Modulis" ne "Kita" ir "Dokumentas/Dokumentai" - "Dokumentas", tuomet dalyvauja B00_IMP ir parinkto modulio lentelės.
- Jei "Modulis" yra "Kita" ir "Dokumentas/Dokumentai" - "Dokumentai", tuomet dalyvauja tik K00_DOKF lentelė.
- Jei "Modulis" ne "Kita" ir "Dokumentas/Dokumentai" - "Dokumentai", tuomet dalyvauja K00_DOKF ir parinkto modulio lentelės.
- Jei "Modulis" yra "Kita" ir "Dokumentas/Dokumentai" - "PDF ataskaita", tuomet dalyvauja tik B00_IMP lentelė.
- Jei "Modulis" ne "Kita" ir "Dokumentas/Dokumentai" - "PDF ataskaita", tuomet dalyvauja B00_IMP ir parinkto modulio lentelės.
- Pavadinimo prg. - tarpinė failo pavadinimo, kuris keliamas į debesį, generavimo programa.
- Prioritetas - katalogo nustatymo prioritetas vykdant failų perkėlimą į debesį.
Pagal nutylėjimą failo pavadinimas sudarytas iš modulio+K00 arba B00+K00 arba B00 operacijos numerio. Pvz.: "PO_K00_010000000066"
Failų perkėlimas iš Rivile GAMA duomenų bazės į aprašytus MS sharepoint katalogus naudojant užprogramuotą klavišą
Pirkimo operacijose prisegtų failų perkėlimui į debesį užprogramuojamas klavišas:
clear program
lcKodas_fl01="PIRKIMAI"
lcDateFrom=.f.
lcDateTo=.f.
lcModul="*"
lcOpNo="*"
lShowError=.t.
MC_FILE_UPLOAD("UPLOAD",lShowError,lcKodas_fl01, lcDateFrom, lcDateTo, lcModul, lcOpNo)
Paspaudus užprogramuotą klavišą, visi failai pagal aprašytą katalogo nustatymų logiką "PIRKIMAI", bus perkelti į MS sharepoint debesį.
Po failų perkėlimo į MS sharepoint debesį, Rivile GAMA programoje prie "Dokumentas" arba "Dokumentai" pasikeičia failo tipas į "Nuoroda į failą", o vietoje failo atsiranda internetinė nuoroda į tą failą debesyje.
Failų perkėlimas iš Rivile GAMA duomenų bazės į aprašytus MS sharepoint katalogus naudojant "Scheduler"
Sukuriamas ".bat" failas:
C:\RIV_GAMA\RIV_GAMA.EXE .f. .f. 2 AUTO auto XXF "MC_FILE_UPLOAD('UPLOAD',.f.,'PIRKIMAI',,,'*','*')"
Apsirašoma "Task Scheduler" užduotis, kurioje nurodoma failų perkėlimo į debesį laiko intervalas.