dinsdag 22 oktober 2019

BODS: via script files kopieren naar andere directory of naar een REMOTE systeem

Om via Bods files in een specifieke directory te kopieren naar een andere directory of naar een Remote systeem kan je het volgende doen




In sc_filelist:


# Vul Variabelen
$G_DirNaamNieuw        = '\\\\swappams2820.basis.lan\IVS_BI_Ontwikkel\data\Output\01.Overstijgend\01_ZichtenGrip\WMONED\beschikte_voorziening\\Overzetten\\';
#$G_DirNaamInVerwerking = '\\\\swappams2820.basis.lan\IVS_BI_Ontwikkel\data\02 InVerwerking\\';
$G_DirNaamVerwerkt     = '\\\\swappams2820.basis.lan\IVS_BI_Ontwikkel\data\Output\01.Overstijgend\01_ZichtenGrip\WMONED\beschikte_voorziening\verwerkt\\';
$G_FileNaam            = 'dummy*';
$G_COUNTER             = 0;
#$G_LAAD_DATUM          = sysdate();


#Maak een lijst aan met bestanden. Seperator is |.
wait_for_file(  $G_DirNaamNieuw || $G_FileNaam,1000,1000,-1,$G_FileList,$G_ListSize,'|');


#Staging tabel legen.
#sql('OJZSTGA1', 'truncate table DWH_DOEL.JW_STG_GEBIED_WIJK');


print('==================================== 01 ====================================');
print('$G_DirNaamNieuw        = [$g_DirNaamNieuw]');
#print('$G_DirNaamInVerwerking = [$G_DirNaamInVerwerking]');
print('$G_DirNaamVerwerkt     = [$G_DirNaamVerwerkt]');
print('$G_FileNaam            = [$g_FileNaam]');
print('$G_COUNTER             = [$G_COUNTER]');
#print('$G_LAAD_DATUM          = [$G_LAAD_DATUM]');
print('$G_FileList            = [$G_FileList]');
print('$G_ListSize            = [$G_ListSize]');




WL_inlezen_bestanden

while conditie==>   ($G_COUNTER != $G_ListSize)

Kopie naar ander directory 


#Maak een lijst aan met bestanden. Seperator is |.
$G_FolderFileNaam = word_ext($G_FileList,$G_COUNTER +1,'|' );

#Bepaal de filenaam door de foldernaam er af te halen.
$G_FileNaam       = substr($G_FolderFileNaam,length($G_DirNaamNieuw)+1,length( $G_FolderFileNaam) );

#$G_FileNaam       = substr($G_FolderFileNaam,index($G_FolderFileNaam, '01 Nieuw/' ,1)+9,length( $G_FolderFileNaam) );
#$G_GEBIED         = word_ext($G_FileNaam,1,'_');
#$G_WIJK           = word_ext($G_FileNaam,2,'_');


# Verplaats bestand naar verwerkt en voeg de verwerkingsdatum en tijdstip toe aan het bestandsnaam.
$G_MV_BRON = $G_DirNaamNieuw    || $G_FileNaam ;
$G_MV_DOEL = $G_DirNaamVerwerkt || $G_FileNaam ;
# file copy : werkt met volledige padnamen in specifiek padformaat
# $G_MV_BRON ==>  \\swappams2820.basis.lan\IVS_BI_Ontwikkel\data\Output\01.Overstijgend\01_ZichtenGrip\WMONED\beschikte_voorziening\Overzetten\dummy1.txt

file_copy($G_MV_BRON,$G_MV_DOEL,1);

print('==================================== 02 ====================================');

print('$G_COUNTER          = [$G_COUNTER]');
print('$G_FolderFileNaam   = [$G_FolderFileNaam]');
print('$G_FileNaam         = [$G_FileNaam]');
#print('$G_GEBIED           = [$G_GEBIED]');
print('$G_MV_BRON          = [$G_MV_BRON]');
print('$G_MV_DOEL          = [$G_MV_DOEL]');

$G_COUNTER= $G_COUNTER +1;


Kopie naar een external systeem(bijv FTP)


maak eerst File Location aan bijv ftp. en definieer ook een local directory. Deze directory zet je de bestanden neer die later getransporteerd worden met het copy remote commando in het script





















script SC_COPY_naar_EXTERNAL





#Maak een lijst aan met bestanden. Seperator is |.
$G_FolderFileNaam = word_ext($G_FileList,$G_COUNTER +1,'|' );

#Bepaal de filenaam door de foldernaam er af te halen.
$G_FileNaam       = substr($G_FolderFileNaam,length($G_DirNaamNieuw)+1,length( $G_FolderFileNaam) );

#$G_FileNaam       = substr($G_FolderFileNaam,index($G_FolderFileNaam, '01 Nieuw/' ,1)+9,length( $G_FolderFileNaam) );
#$G_GEBIED         = word_ext($G_FileNaam,1,'_');
#$G_WIJK           = word_ext($G_FileNaam,2,'_');


# Verplaats bestand naar verwerkt en voeg de verwerkingsdatum en tijdstip toe aan het bestandsnaam.
$G_MV_BRON = $G_DirNaamNieuw    || $G_FileNaam ;
$G_MV_DOEL = $G_DirNaamVerwerkt || $G_FileNaam ;
# file copy : werkt met volledige padnamen in specifiek padformaat
# $G_MV_BRON ==>  \\swappams2820.basis.lan\IVS_BI_Ontwikkel\data\Output\01.Overstijgend\01_ZichtenGrip\WMONED\beschikte_voorziening\Overzetten\dummy1.txt

copy_to_remote_system('FTPHans', $G_FileNaam );

print('==================================== 02 ====================================');

print('$G_COUNTER          = [$G_COUNTER]');
print('$G_FolderFileNaam   = [$G_FolderFileNaam]');
print('$G_FileNaam         = [$G_FileNaam]');
#print('$G_GEBIED           = [$G_GEBIED]');
print('$G_MV_BRON          = [$G_MV_BRON]');
print('$G_MV_DOEL          = [$G_MV_DOEL]');

$G_COUNTER= $G_COUNTER +1;



Geen opmerkingen:

Een reactie posten