/// <summary> /// Riconoscimento di una delle 2 tipologie per il formato 1 di fogli presenti nel file excel /// quindi si puo trattare di un foglio di informazioni di lega o di concentrazioni per queste /// </summary> /// <param name="currentSheet"></param> /// <param name="listaParametriRiconosciuti"></param> /// <returns></returns> private Constants_Excel.TipologiaFoglio_Format RecognizeTipoFoglio_Format1(ExcelWorksheet currentSheet) { // inizializzazione del foglio in lettura corrente Excel_AlloyInfo_Sheet recognizedInfoOnSheet; // tentativo di lettura delle informazioni relativamente al formato di lega Constants_Excel.EsitoRecuperoInformazioniFoglio riconoscimentoLeghe = ExcelRecognizers.Recognize_Format1_InfoLeghe(ref currentSheet, out recognizedInfoOnSheet); // ho riconosciuto correttamente il foglio come foglio di leghe if (riconoscimentoLeghe == Constants_Excel.EsitoRecuperoInformazioniFoglio.RecuperoConWarnings || riconoscimentoLeghe == Constants_Excel.EsitoRecuperoInformazioniFoglio.RecuperoCorretto) { // attribuzione tipologia lega recognizedInfoOnSheet.GetTipologiaFoglio = Constants_Excel.TipologiaFoglio_Format.FoglioLeghe; CommonMemList.InformazioniFoglioExcelOrigine.Add(recognizedInfoOnSheet); return(Constants_Excel.TipologiaFoglio_Format.FoglioLeghe); } // se mi trovo qui è perché non sono ancora riuscito a distinguere per il foglio corrente Constants_Excel.EsitoRecuperoInformazioniFoglio riconoscimentoConcentrazioni = ExcelRecognizers.Recognize_Format1_InfoConcentrations(ref currentSheet, out recognizedInfoOnSheet); if (riconoscimentoConcentrazioni == Constants_Excel.EsitoRecuperoInformazioniFoglio.RecuperoConWarnings || riconoscimentoConcentrazioni == Constants_Excel.EsitoRecuperoInformazioniFoglio.RecuperoCorretto) { // attribuzione tipologia concentrazioni recognizedInfoOnSheet.GetTipologiaFoglio = Constants_Excel.TipologiaFoglio_Format.FoglioConcentrazioni; CommonMemList.InformazioniFoglioExcelOrigine.Add(recognizedInfoOnSheet); return(Constants_Excel.TipologiaFoglio_Format.FoglioConcentrazioni); } // attribuzione tipologia indefinita recognizedInfoOnSheet.GetTipologiaFoglio = Constants_Excel.TipologiaFoglio_Format.NotDefined; // nel caso in cui mi trovassi a non avere nessun riconoscimento per entrambi i formati il foglio non viene preso in considerazione ma solamente // i diversi errori / warnings di generazione durante l'analisi return(Constants_Excel.TipologiaFoglio_Format.NotDefined); }
/// <summary> /// Riconoscimento se il formato usato per la seconda tipologia per il foglio corrente è effettivamente valida per /// il riconoscimento del foglio corrente come formato 2 /// Viene quindi restituito l'array dei parametri che viene eventualmente riconosciuto dall'analisi /// </summary> /// <param name="currentSheet"></param> /// <param name="listaParametriRiconosciuti"></param> /// <returns></returns> private bool RecognizeTipoFoglio_Format2(ExcelWorksheet currentSheet) { // inizializzazione per il foglio corrente Excel_AlloyInfo_Sheet RecognizedInfo; // analisi per il foglio corrente Constants_Excel.EsitoRecuperoInformazioniFoglio esitoLetturaFoglioSecondoFormato = ExcelRecognizers.Recognize_Format2_InfoLegheConcentrazioni( ref currentSheet, out RecognizedInfo); if (esitoLetturaFoglioSecondoFormato == Constants_Excel.EsitoRecuperoInformazioniFoglio.RecuperoConWarnings || esitoLetturaFoglioSecondoFormato == Constants_Excel.EsitoRecuperoInformazioniFoglio.RecuperoCorretto) { // fisso la categoria per il foglio corrente e ritorno RecognizedInfo.GetTipologiaFoglio = Constants_Excel.TipologiaFoglio_Format.FoglioLegheConcentrazioni; // aggiunta del foglio corrente CommonMemList.InformazioniFoglioExcelOrigine.Add(RecognizedInfo); return(true); } return(false); }