"; $htmlcampioni .= "Resoconto caricamento CAMPIONI

"; $htmlcampioni .= "IdDataMaterialQtaSD documentScarto"; $htmlcampioni .= "Errore durante il caricamento dei record CAMPIONI"; $htmlcampioni .= "

"; } // ------------------- CONTROLLI SUI CAMPIONI EX FILEMAKER ---------------- // if (!file_exists($temp.$campionicheck)) { $Query = "SELECT Id,Document_date,upper(Material),Billing_qty_in_SKU,SD_Document,upper(PO_Number),Ship_to_party,Motivo_Scarto FROM FATTURATO2_CONTAINER"; $stmt = $db->prepare($Query); $stmt->execute(); while ($row = $stmt->fetch()) { $Id = $row[0]; $Document_date = $row[1]; $Material = $row[2]; $Billing = $row[3]; $SD_document = $row[4]; $PO_number = $row[5]; $Ship_to_party = $row[6]; $Scarto = $row[7]; $Motivo = ""; if ($Billing === null || $Billing == 0 || strlen($Billing) == 0) { $Motivo = $Scarto." Quantita mancante"; $Scarto = $Motivo; $Query = "UPDATE FATTURATO2_CONTAINER SET Motivo_Scarto = '".$Motivo."' WHERE Id = ".$Id; $stme = $db->prepare($Query); $stme->execute(); $severity = 1; } if ($Material === null || $Material == 0 || strlen($Material) == 0) { $Motivo = $Scarto." Articolo mancante"; $Scarto = $Motivo; $Query = "UPDATE FATTURATO2_CONTAINER SET Motivo_Scarto = '".$Motivo."' WHERE Id = ".$Id; $stme = $db->prepare($Query); $stme->execute(); $severity = 1; } if ($PO_number === null || strlen($PO_number) == 0 || substr($PO_number,0,4) != "CAM/") { $Motivo = $Scarto." Protocollo non conforme"; $Scarto = $Motivo; $Query = "UPDATE FATTURATO2_CONTAINER SET Motivo_Scarto = '".$Motivo."' WHERE Id = ".$Id; $stme = $db->prepare($Query); $stme->execute(); } else { $Query = "SELECT count(Id) FROM GARE WHERE upper(Protocollo) = '".$PO_number."' fetch first 1 row only"; $stme = $db->prepare($Query); $stme->execute(); $pro = $stmt->fetch(); if($pro[0] == 0) { $Motivo = $Scarto." Protocollo non trovato"; $Scarto = $Motivo; $Query = "UPDATE FATTURATO2_CONTAINER SET Motivo_Scarto = '".$Motivo."' WHERE Id = ".$Id; $stme = $db->prepare($Query); $stme->execute(); $severity = 1; } } } if ($severity == 0) { // --------------- ESECUZIONE CONTROLLI BLOCCANTI --------------- // $Query = "SELECT Id,Document_date,upper(Material),Billing_qty_in_SKU,SD_Document,upper(PO_Number),Ship_to_party,Motivo_Scarto FROM FATTURATO2_CONTAINER WHERE Motivo_Scarto IS NULL"; $stmt = $db->prepare($Query); $stmt->execute(); while ($row = $stmt->fetch()) { $Id = $row[0]; $Document_date = $row[1]; $Material = $row[2]; $Billing = $row[3]; $SD_document = $row[4]; $PO_number = $row[5]; $Ship_to_party = $row[6]; $Scarto = $row[7]; $Motivo = ""; $Query = "SELECT MagazzinoUtente FROM GARE WHERE upper(Protocollo) = '".$PO_number."'"; $stme = $db->prepare($Query); $stme->execute(); if ($stme->RowCount() == 0) { $Motivo = $Scarto." Magazzino non trovato"; $Scarto = $Motivo; $Query = "UPDATE FATTURATO2_CONTAINER SET Motivo_Scarto = '".$Motivo."' WHERE Id = ".$Id; $stme = $db->prepare($Query); $stme->execute(); $severity = 2; } $Query = "SELECT CODARTICOLO FROM MASTERFILE WHERE UPPER(CODARTICOLO) = '".$Material."'"; $stme = $db->prepare($Query); $stme->execute(); if ($stme->RowCount() == 0) { $Motivo = $Scarto." Articolo non in Masterfile"; $Scarto = $Motivo; $Query = "UPDATE FATTURATO2_CONTAINER SET Motivo_Scarto = '".$Motivo."' WHERE Id = ".$Id; $stme = $db->prepare($Query); $stme->execute(); $severity = 2; } } } } // ------------------- SCRIPT FILEMAKER CAMPIONI ---------------- // if ($severity == 0) { $MagAziendale = "MAG/624/2018"; $CausCarico = "CARMAG"; $CausScarico = "SCAMAG"; $Operatore = "system"; // Movimenti magazzino giacenza // $Query = "SELECT DISTINCT(PO_number) FROM FATTURATO2_CONTAINER WHERE upper(PO_number) LIKE 'CAM/%' AND Motivo_Scarto IS NULL"; $stmt = $db->prepare($Query); $stmt->execute(); while ($row = $stmt->fetch()) { $Protocollo = $row[0]; $Query = "SELECT MagazzinoUtente,SHCustomer,IdCodClienteSAP FROM GARE WHERE Protocollo ='$Protocollo'"; $stmg = $db->prepare($Query); $stmg->execute(); $row = $stmg->fetch(); $MagPartenza = $row[0]; $ShCustomer = $row[1]; $CodClienteSap = $row[2]; if ($ShCustomer != $CodClienteSap) $CaricoScarico = 1; else $CaricoScarico = 0; $y = 0; $CodiceArticolo = array(); $CodiceShort = array(); $Descrizione = array(); $Hyperion1 = array(); $Hyperion2 = array(); $Hyperion3 = array(); $StratPack = array(); $CodSC = array(); $ArtHcHo = array(); $PrezzoUnitario = array(); $QtaRichiesta = array(); $Query = "SELECT Material,Billing_qty_in_SKU FROM FATTURATO2_CONTAINER WHERE PO_Number = '$Protocollo'"; $stmc = $db->prepare($Query); $stmc->execute(); while ($row = $stmc->fetch()) { $Material = $row[0]; $Qta = $row[1]; $Query = "SELECT ShortProductCode,DESCRIZIONE,Hyperion1,Hyperion2,Hyperion3,StratPack,SC,Hospital_HomeCare,Prezzi_ MEDI FROM MASTERFILE WHERE CODARTICOLO = '$Material'"; $stmm = $db->prepare($Query); $stmm->execute(); while ($row = $stmm->fetch()) { $CodiceArticolo[$y] = $Material; $CodiceShort[$y] = $row[0]; $Descrizione[$y] = $row[1]; $Hyperion1[$y] = $row[2]; $Hyperion2[$y] = $row[3]; $Hyperion3[$y] = $row[4]; $StratPack[$y] = $row[5]; $CodSC[$y] = $row[6]; $ArtHcHo[$y] = $row[7]; $PrezzoUnitario[$y] = strlen($row[8] == 0) ? 0 : $row[8]; $QtaRichiesta[$y] = $Qta; $y++; } } for ($z = 0; $z < count($CodiceArticolo); $z++) { $Articolo = $CodiceArticolo[$z]; $Query = "SELECT Id FROM MOVIMENTI_MAGAZZINO_GIACENZA WHERE CodiceArticoloSAP = '$Articolo' AND MagazzinoIn = '$MagPartenza'"; $stmm = $db->prepare($Query); $stmm->execute(); $row = $stmm->fetch(); if (count($row) == 0) { $Query = "INSERT INTO MOVIMENTI_MAGAZZINO_GIACENZA (CodiceArticoloSAP,CodiceArticoloShort,DescrizioneArticolo,Hyperion1,Hyperion2,Hyperion3,StratPack,ArticoloHospital_HomeCare, ValoreGiacenza,QtaGiacenza,Operatore) VALUES ('$CodiceArticolo[$z]','$CodiceShort[$z],'$Descrizione[$z]','$Hyperion1[$z]','$Hyperion2[$z]','$Hyperion3[$z]','$StratPack[$z]', $ArtHcHo[$z],$PrezzoUnitario[$z],$QtaRichiesta[$z],'$Operatore'"; } else { $Query = "UPDATE MOVIMENTI_MAGAZZINO_GIACENZA SET ValoreGiacenza = ValoreGiacenza + $PrezzoUnitario[$z]) / 2, QtaGiacenza = QtaGiacenza + $QtaRichiesta[$z],Operatore = '$Operatore' WHERE CodiceArticoloSAP = '$Articolo' AND MagazzinoIn = '$MagPartenza'"; } $stmg = $db->prepare($Query); $stmg->execute(); } if ($CaricoScarico == 1) { for ($z = 0; $z < count($CodiceArticolo); $z++) { $Articolo = $CodiceArticolo[$z]; $Query = "SELECT Id FROM MOVIMENTI_MAGAZZINO_GIACENZA WHERE CodiceArticoloSAP = '$Articolo' AND MagazzinoIn = '$MagPartenza'"; $stmm = $db->prepare($Query); $stmm->execute(); $row = $stmm->fetch(); if (count($row) <> 0) { $Query = "UPDATE MOVIMENTI_MAGAZZINO_GIACENZA SET ValoreGiacenza = ValoreGiacenza + $PrezzoUnitario[$z]) / 2, QtaGiacenza = QtaGiacenza + $QtaRichiesta[$z],Operatore = '$Operatore' WHERE CodiceArticoloSAP = '$Articolo' AND MagazzinoIn = '$MagPartenza'"; $stmg = $db->prepare($Query); $stmg->execute(); } } } } } // Movimenti di carico e scarico $Query = "SELECT DISTINCT(PO_number) FROM FATTURATO2_CONTAINER WHERE upper(PO_number) LIKE 'CAM/%' AND Motivo_Scarto IS NULL"; $stmt = $db->prepare($Query); $stmt->execute(); while ($row = $stmt->fetch()) { $Protocollo = $row[0]; $Query = "SELECT UtenteCreatore,DataBando,Protocollo,IdCodClienteSAP,SHCustomer,DenominazioneStazione,IndirizzoCliente,LocalitaCliente,CapCliente,ProvinciaCliente,RegioneCliente, ImportoGara,SHCity,SHStreet,SHCountry,SHRegione,SHRegion,SHPostalCode,SHName,SHQualifica,MagazzinoUtente,DA_Qualifica,DA_Titolo,DA_Descrizione,DA_Email,DA_Stanza,DA_Reparto,DA_Localita, DA_Provincia,DA_Cap,DA_Telefono,Da_Mobile,DA_Id,Tipo_Campioni FROM GARE WHERE Protocollo = '$Protocollo'"; $stmg = $db->prepare($Query); $stmg->execute(); while ($row = $stmg->fetch()) { $UtenteCreatore = $row[0]; $DataBando = $row[1]; $Protocollo = $row[2] $CodSold = $row[3]; $CodShip = $row[4]; $RagioneSociale = $row[5]; $Indirizzo = $row[6]; $Localita = $row[7]; $Cap = $row[8]; $Provincia = $row[9]; $RegioneCliente = $row[10]; $ImportoGara = $row[11]; $ShCity = $row[12]; $ShStreet = $row[13]; $ShCountry = $row[14]; $ShRegione = $row[15]; $ShRegion = $row[16]; $ShPostalCode = $row[17]; $ShName = $row[18]; $ShQualifica = $row[19]; $MagUtente = $row[20]; $DA_Qualifica = $row[21]; $DA_Titolo = $row[22]; $DA_Descrizione = $row[23]; $DA_Email = $row[24]; $DA_Stanza = $row[25]; $DA_Reparto = $row[26]; $DA_Localita = $row[27]; $DA_Provincia = $row[28]; $DA_Cap = $row[29]; $DA_Telefono = $row[30]; $DA_Mobile = $row[31]; $DA_Id = $row[32]; $TipoCampioni = $row[33]; $Query = "SELECT Id FROM UTENTI WHERE CodMagazzino = '$MagUtente' FETCH FIRST 1 ROW ONLY"; $stmu = $db->prepare($Query); $stmu->execute(); $row = $stmu->fetch(); $IdUtente = $row[0]; if ($CodSold <> $CodShip) { $Query = "SELECT Id FROM MAGAZZINI WHERE TipoMagazzino = 'c/ Visione' AND CodClienteMagazzino = '$CodShip' AND DA_Id = ''"; $stmz = $db->prepare($Query); $stmz->execute(); $row = $stmz->fetch(); if (count($row) == 0) { $DescrizioneMagazzino = "Magazzino ".$ShName; $Query = "INSERT INTO MAGAZZINI (DescrizioneMagazzino,IndirizzoMagazzino,LocalitaMagazzino,NazioneMagazzino,CapMagazzino,ProvinciaMagazzino,TipoMagazzino, CodClienteMagazzino,RagioneSocialeMagazzino) VALUES ('$DescrizioneMagazzino','$ShStreet','$ShCity','$ShCountry','$ShPostalCode','$ShRegion','c/ Visione', '$CodShip','$ShName')"; $stmz = $db->prepare($Query); $stmz->execute(); $Query = "SELECT Id FROM MAGAZZINI WHERE TipoMagazzino = 'c/ Visione' AND CodClienteMagazzino = '$CodShip' AND DA_Id = ''"; $stmz = $db->prepare($Query); $stmz->execute(); $row = $stmz->fetch(); } $MagCliente = $row[0]; if (strlen($DA_Id) > 0) { $Query = "SELECT Id FROM MAGAZZINI WHERE TipoMagazzino = 'c/ Visione' AND CodClienteMagazzino = '$CodShip' AND DA_Id = '$DA_Id'"; $stmz = $db->prepare($Query); $stmz->execute(); if (count($row) == 0) { $Query = "INSERT INTO MAGAZZINI (Id,DescrizioneMagazzino,IndirizzoMagazzino,LocalitaMagazzino,NazioneMagazzino,CapMagazzino,ProvinciaMagazzino,TipoMagazzino, CodClienteMagazzino,RagioneSocialeMagazzino,DA_Descrizione,DA_Email,DA_Id,DA_Mobile,DA_Qualifica,DA_Reparto,DA_Stanza,DA_Telefono,DA_Titolo) VALUES ( '$MagCliente','$DescrizioneMagazzino','$ShStreet','$ShCity','$ShCountry','$ShPostalCode','$ShRegion','c/ Visione','$CodShip','$ShName','$DA_Descrizione', '$DA_Email','$DA_Id','$DA_Mobile','$DA_Qualifica','$DA_Reparto','$DA_Stanza',$DA_Telefono','$DA_Titolo')"; $stmz = $db->prepare($Query); $stmz->execute(); } } } } // ------------------- PRODUZIONE OUTPUT ---------------- // if (!file_exists($temp.$campionicheck)) { $Query = "select Id,Document_date,Material,Billing_qty_in_SKU,SD_Document,PO_Number,Ship_to_party,Motivo_Scarto from FATTURATO2_CONTAINER"; $stmt = $db->prepare($Query); $stmt->execute(); if ($stmt->Rowcount() > 0) { $htmlcampioni .= ""; $htmlcampioni .= ""; $countcampioni = 0; while ($row = $stmt->fetch()) { $htmlcampioni .= ""; if ($row[7] == null) $countcampioni++; } $htmlcampioni .= "
Resoconto caricamento CAMPIONI

"; $htmlcampioni .= "
IdDataMaterialQtaSD documentPO numberShipScarto
".$row[0]."".$row[1]."".$row[2]."".$row[3]."".$row[4]."".$row[5]."".$row[6]."".$row[7]."

Movimenti validi caricati: ".$countcampioni."


"; } else { $htmlcampioni .= ""; $htmlcampioni .= ""; $htmlcampioni .= ""; $htmlcampioni .= "
Resoconto caricamento CAMPIONI

"; $htmlcampioni .= "
IdDataMaterialQtaSD documentPO numberShipScarto
Nessuna record CAMPIONI caricato


"; } } else { $htmlcampioni .= ""; $htmlcampioni .= ""; $htmlcampioni .= ""; $htmlcampioni .= "
Resoconto caricamento campioni

"; $htmlcampioni .= "
IdDataMaterialQtaSD documentScarto
Errore durante il caricamento dei campioni


"; } // ------------------- CONCLUSIONE SCRIPT - EMAIL ---------------- // $oggetto = "DATAFLEX Tender - Caricamento CAMPIONI del ".date("d/m/Y H:i:s"); $corpo = "Operazioni di caricamento campioni da SAP

".$htmlcampioni."


"; $corpo .= "

"; $corpo .= "Questa mail รจ stata generata automaticamente da un indirizzo di posta elettronica non presidiato. Si chiede pertanto non rispondere al messaggio. Grazie.

"; $corpo .= "

"; try { $ma = new MAILprog; $mail = new PHPMailer(true); $mail->CharSet = $ma->char; $mail->SMTPDebug = 2; $mail->IsSMTP(); $mail->SMTPAuth = true; $mail->SMTPOptions = array ('ssl' => array ('verify_peer' => false,'verify_peer_name' => false,'allow_self_signed' => true)); $mail->Username = $ma->user; $mail->Password = $ma->pass; $mail->SMTPSecure = $ma->secu; $mail->Host = $ma->host; $mail->Port = $ma->port; $mail->From = $ma->from; $mail->FromName = $ma->name; for ($x=0; $xAddAddress($destinatari[$x]); } for ($x=0; $xaddBCC($conoscenza[$x]); } $mail->Subject = $oggetto; $mail->IsHTML(true); $mail->Body = $corpo; if(!$mail->Send()) $send = 1; $mail->clearAllRecipients(); } catch (Exception $e) { echo $e; } $db = null; ?>