]> git.llucax.com Git - mecon/scripts.git/blobdiff - contratados/Contratados.pl
Se agrega planilla para pedir empanadas.
[mecon/scripts.git] / contratados / Contratados.pl
index eb137a97abedc25a4af6d5f81538a75f3135d080..71e2da1ae132631a7d68d402c8448caf1b767ece 100755 (executable)
@@ -11,7 +11,6 @@ $opciones  ='-o username=msklar\@mecon%larva1976';
 # COPIO LOS ARCHIVOS DBF NECESARIOS {{{
 $fallo1 = system ("smbmount //dgrh/ottonello  $dir_local $opciones");
 if ($fallo1) {
-    print "NO MONTE NADA.....";
     $address='mmarre@mecon.gov.ar, sotton@mecon.gov.ar, msklar@mecon.gov.ar, hdelbo@mecon.gov.ar';
     $linea = "echo 'Hubo un error con el samba del script de Contratados en portal.mecon.gov.ar' | mail $address ";
     $ret = system ($linea);
@@ -19,6 +18,22 @@ if ($fallo1) {
 }
 # }}} FIN COPIA DE ARCHIVOS 
 
+# VEO SI LAS FECHAS DE LOS ARCHIVOS ES IGUAL
+$variable1 = `ls -l  --time-style=long-iso mnt/Resultados.dbf`;
+$variable2 = `ls -l  --time-style=long-iso Resultados.dbf.bak`;
+@variable1 = split (/\s+/, $variable1);
+@variable2 = split (/\s+/, $variable2);
+if (@variable1['5'] eq @variable2['5'] && @variable1['6'] eq @variable2['6']) {
+    $address='mmarre@mecon.gov.ar, sotton@mecon.gov.ar, msklar@mecon.gov.ar, eneme@mecon.gov.ar, gagric@mecon.gov.ar, gmeray@mecon.gov.ar';
+    $linea = "echo 'Hubo un error. No se actualizo el archivo de contratados para la carga de la intranet. ' | mail $address ";
+    $ret = system ($linea);
+    system ("smbumount $dir_local");
+    exit;
+}
+
+#COPIO EL ARCHIVO PARA COMPARAR DESPUES
+system ("cp $dir_local/Resultados.dbf ~/Resultados.dbf.bak --preserve=timestamp");
+
 # OBTENGO LOS HANDLERS DE LAS BASES {{{
 $dbh_local = DBI->connect("DBI:XBase:$dir_local");
 $dbh_mysql = DBI->connect("DBI:mysql:dbname=Contratados;host=intranet-db","intranet","intranet");
@@ -26,14 +41,32 @@ $dbh_mysql = DBI->connect("DBI:mysql:dbname=Contratados;host=intranet-db","intra
 $dbh_mysql->do("DELETE FROM Contratados");
 
 $sql_select = 'SELECT * FROM resultados';
+              
 $sql_insert = "REPLACE INTO Contratados (nrodoc,tipodoc,nombre,codep,marco_legal,dedicacion,hentra,hsale,oficina,edificio,interno,fevig,febaja,felimita,responsa) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
 $re_select = $dbh_local->prepare($sql_select);
 $re_insert = $dbh_mysql->prepare($sql_insert);
 $re_select->execute();
+
 while ($res = $re_select->fetchrow_hashref()){
-#    print Dumper($res);
-#    last;
-    $re_insert->execute($res->{DOC}, $res->{TIPDOC}, $res->{APELLIDO}.' '.$res->{NOMBRE},$res->{CODIGO_ACT},$res->{TIPOCONTRA},$res->{PARTIME},$res->{HENTRA},$res->{HSALE},$res->{OFICINA},$res->{EDIFICIO},$res->{INTERNO},$res->{FEVIG},$res->{FEBAJA},$res->{FELIMITA},$res->{RESPONSA});
+   #VERIFICO SI CAMBIARON LA ESTRUCTURA DEL ARCHIVO Resultados.dbf
+   if (!exists($res->{NUMDOC})     || !exists($res->{TIPDOC})     || !exists($res->{APELLIDO}) || !exists($res->{NOMBRE})  || 
+       !exists($res->{CODIGO_ACT}) || !exists($res->{TIPOCONTRA}) || !exists($res->{PARTIME})  || !exists($res->{HENTRA})  || 
+       !exists($res->{HSALE})      || !exists($res->{OFICINA})    || !exists($res->{EDIFICIO}) || !exists($res->{INTERNO}) || 
+       !exists($res->{FEVIG})      || !exists($res->{FEBAJA})     || !exists($res->{FELIMITA}) || !exists($res->{RESPONSA})) {
+       
+       #$address='mmarre@mecon.gov.ar, sotton@mecon.gov.ar, msklar@mecon.gov.ar, eneme@mecon.gov.ar, gagric@mecon.gov.ar, gmeray@mecon.gov.ar';
+       $address='mmarre@mecon.gov.ar';
+       $linea = "echo 'Hubo un error. Se Modifico la estructura del archivo Resultados.dbf.\nMientras no se deje como la version anterior este proceso va a fallar.\nSi esto pasa, cambia la linea para que les mande un mail a todos. ' | mail $address ";
+       $ret = system ($linea);
+       $dbh_local->disconnect();
+       system ("smbumount $dir_local");
+       exit;
+   }
+#   print Dumper($res);
+#   last;
+   $re_insert->execute($res->{NUMDOC}, $res->{TIPDOC}, $res->{APELLIDO}.' '.$res->{NOMBRE},$res->{CODIGO_ACT},$res->{TIPOCONTRA},
+                       $res->{PARTIME},$res->{HENTRA},$res->{HSALE},$res->{OFICINA},$res->{EDIFICIO},$res->{INTERNO},$res->{FEVIG},
+                      $res->{FEBAJA},$res->{FELIMITA},$res->{RESPONSA});
 }
 
 $dbh_local->disconnect();