fclose($file);
        $logger->write($xml_filename);
        if ($success) {
            $backup_file = SP_OTTODE_PATH . 'cat-backup/inventories.zip';
            if (is_file($backup_file)) {
                unlink($backup_file);
            }
            $shell = array();
            $shell[] = 'cd ' . SP_OTTODE_UPLOAD_PATH_INVENTORIES;
            $shell[] = 'zip ' . $backup_file . ' ' . $xml_filename;
            $shell[] = 'cd ' . SP_OTTODE_PATH . 'jms';
            $shell[] = './produce-styles-inventories.sh';
            $output = shell_exec(implode("\n", $shell));
            $logger->write(trim($output));
            if (!file_exists($file_fullpath)) {
                $class_jc->updateLastReportedStock($jng_sp_id);
                $upload_id = $class_ju->newUpload($jng_sp_id, 'PRI', $xml_filename, $session_userinfo['username']);
                $class_ju->updateStatus($upload_id, 'S', 'auto-check');
                $logger->write('JMS Upload Success');
            } else {
                unlink($file_fullpath);
                $logger->write('JMS Upload Failed');
            }
        }
    }
    $logger->write('UPLOAD SUMMARY:');
    $logger->write('Total Products reported = ' . $total_products);
    $logger->write('Total Articles reported = ' . $total_articles);
    $logger->write('Total Products reported with stock = ' . $total_products_hasStock . ', no stock = ' . ($total_products - $total_products_hasStock));
    $logger->write('Total Articles reported with stock = ' . $total_articles_hasStock . ', no stock = ' . ($total_articles - $total_articles_hasStock));
} else {