From d042c077bb55797aaf6cdcdf56d16890854b48a4 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Thu, 20 Oct 2022 10:11:28 +0200 Subject: [PATCH] Baglietto: - update x header opzionale - update valori string/decimal --- IOB-UT-NEXT/DataExport.cs | 8 ++++++-- IOB-WIN-NEXT/DATA/CONF/BAGLIETTO_CIMOLAI_01.ini | 1 + IOB-WIN-NEXT/DATA/CONF/SIMUL_01.ini | 1 + IOB-WIN-NEXT/IobGeneric.cs | 14 ++++++++++---- 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/IOB-UT-NEXT/DataExport.cs b/IOB-UT-NEXT/DataExport.cs index 0c9a57e3..42c6cb82 100644 --- a/IOB-UT-NEXT/DataExport.cs +++ b/IOB-UT-NEXT/DataExport.cs @@ -16,9 +16,10 @@ namespace IOB_UT_NEXT /// /// /// + /// Indica se scrivere header ad inizio CSV /// Separatore da impiegare (default ";") /// - public static bool SaveToCsv(List reportData, string path, char separator = ';') + public static bool SaveToCsv(List reportData, string path, bool writeHeader, char separator = ';') { bool answ = false; var lines = new List(); @@ -28,7 +29,10 @@ namespace IOB_UT_NEXT var elencoValori = props.ToList(); var header = string.Join($"{separator}", props.ToList().Select(x => !string.IsNullOrEmpty(x.Description) ? x.Description : x.Name)); var fieldList = string.Join($"{separator}", props.ToList().Select(x => x.Name)); - lines.Add(header); + if (writeHeader) + { + lines.Add(header); + } var valueLines = reportData.Select(row => string.Join($"{separator}", fieldList.Split(separator).Select(a => row.GetType().GetProperty(a).GetValue(row, null)))); //var valueLines = reportData.Select(row => string.Join(";", header.Split(';').Select(a => row.GetType().GetProperty(a).GetValue(row, null)))); lines.AddRange(valueLines); diff --git a/IOB-WIN-NEXT/DATA/CONF/BAGLIETTO_CIMOLAI_01.ini b/IOB-WIN-NEXT/DATA/CONF/BAGLIETTO_CIMOLAI_01.ini index dc8bf8d4..3d57000e 100644 --- a/IOB-WIN-NEXT/DATA/CONF/BAGLIETTO_CIMOLAI_01.ini +++ b/IOB-WIN-NEXT/DATA/CONF/BAGLIETTO_CIMOLAI_01.ini @@ -67,6 +67,7 @@ FTP_CERT= FTP_SKIP=TRUE FTP_LOC_DIR=temp\csv FTP_REM_DIR= +CSV_ADD_HEADER=true VETO_SEND_SNAPSHOT=5 diff --git a/IOB-WIN-NEXT/DATA/CONF/SIMUL_01.ini b/IOB-WIN-NEXT/DATA/CONF/SIMUL_01.ini index 98339ab8..7d3a2e48 100644 --- a/IOB-WIN-NEXT/DATA/CONF/SIMUL_01.ini +++ b/IOB-WIN-NEXT/DATA/CONF/SIMUL_01.ini @@ -88,6 +88,7 @@ FTP_CERT= FTP_SKIP=TRUE FTP_LOC_DIR=temp\csv FTP_REM_DIR= +CSV_ADD_HEADER=true [BRANCH] NAME=master \ No newline at end of file diff --git a/IOB-WIN-NEXT/IobGeneric.cs b/IOB-WIN-NEXT/IobGeneric.cs index e7d719ff..afbc516e 100644 --- a/IOB-WIN-NEXT/IobGeneric.cs +++ b/IOB-WIN-NEXT/IobGeneric.cs @@ -4517,7 +4517,7 @@ namespace IOB_WIN_NEXT protected int getFluxValInt(DossierFluxLogDTO resultSet, string codFlux) { int answ = 0; - string rawVal = getFluxVal(resultSet, codFlux); + string rawVal = getFluxVal(resultSet, codFlux).Replace(",","."); if (!string.IsNullOrEmpty(rawVal)) { int.TryParse(rawVal, out answ); @@ -4697,7 +4697,7 @@ namespace IOB_WIN_NEXT lgInfo($"exePath: {exePath}"); lgInfo($"sacBaseDir: {sacBaseDir}"); lgInfo("----------------------"); - */ + */ string localPath = Path.Combine(basePath, locDir); lgInfo($"basePath: {basePath} | localPath: {localPath}"); @@ -4748,6 +4748,12 @@ namespace IOB_WIN_NEXT bool answ = false; // salvo articoli string locDir = getOptPar("FTP_LOC_DIR"); + string sAddHeader = getOptPar("CSV_ADD_HEADER"); + bool addHeader = false; + if (!string.IsNullOrEmpty(sAddHeader)) + { + bool.TryParse(sAddHeader, out addHeader); + } string basePath = Application.StartupPath; string tempDir = Path.Combine(basePath, locDir); if (!Directory.Exists(tempDir)) @@ -4756,14 +4762,14 @@ namespace IOB_WIN_NEXT lgInfo($"CSV: created local dir {tempDir}"); } string filePath = Path.Combine(tempDir, "articoli.csv"); - answ = DataExport.SaveToCsv(ListaArticoli, filePath); + answ = DataExport.SaveToCsv(ListaArticoli, filePath, addHeader); if (answ) { lgInfo("CSV: created ART file as articoli.csv"); // salvo PODL string csvName = $"{DateTime.Now:dd-MM-yyyy}.csv"; filePath = Path.Combine(tempDir, $"{csvName}"); - answ = DataExport.SaveToCsv(ListaJobs, filePath); + answ = DataExport.SaveToCsv(ListaJobs, filePath, addHeader); if (answ) { lgInfo($"CSV: created PODL file as {csvName}");