using System;
using System.Collections.Generic;
using System.Data;
using PDFGenerator.Presentation.Section;
using PDFGenerator.BusinessLayer.DataSection;
using ContrattoSei.Utilities;
namespace PDFGenerator.BusinessLayer
{
///
/// Enumeratore della Tipologia di Visualizzazione della Sezione
///
public enum TipologiaVisualizzazione
{
///
/// La sezione viene stampata in modalità torta.
///
TORTA,
///
/// La sezione viene stampata in modalità a istogramma.
///
BARRE,
///
/// Modalità di default.
///
SINGOLA,
///
/// La sezione viene stampata in modalità affiancata.
/// Ad esempio MacroAssett stampata sulla sinistra e Assett stampata sulla destra.
///
DOPPIA,
///
/// Non usata.
///
NO_CONFRONTO,
///
/// Non usata.
///
CONFRONTO,
///
/// Indica che è stata richiesta l'inclusione della PERFORMANCE sulla sezione.
///
PERFORMANCE,
///
/// Indica che è stata richiesta l'inclusione del VERSATONETTO/UTILEPERDITA sulla sezione.
///
VERSATONETTO_UTILEPERDITA,
///
/// Indica che è stata richiesto l'inclusione del RENDIMENTO dall'inizio dell'anno.
///
RENDIMENTO_DA_INIZIOANNO,
///
/// Indica che è stata richiesto l'inclusione del RENDIMENTO a partire dalla data di sottoscrizione.
///
RENDIMENTO_DA_SOTTOSCRIZIONE,
///
/// Indica che nel dettaglio dei prodotti è stato richiesto un raggruppamento per area di bisogno.
///
RAGGRUPPAMENTO_PER_AREA,
///
/// Indica che nel dettaglio dei prodotti è stato richiesto un raggruppamento per tipologia di prodotti.
///
RAGGRUPPAMENTO_PER_TIPOLOGIA,
///
/// Indica se la sezione deve essere stampata o meno.
///
SISTAMPA,
///
/// Indica se escludere o meno il nome del cliente sulla copertina.
///
NO_NOMECLIENTE_PER_COPERTINA,
///
/// Indica se includere o meno la nota a fondo pagina riguardante
/// il dettaglio di Patrimonio non rappresentabile per asset class
///
NOTA_DETTAGLIO_PATRIM_NONRAPP_ASSET,
///
/// Indica se includere o meno la nota a fondo pagina riguardante
/// il dettaglio di Patrimonio non rappresentabile per politica di investimento
///
NOTA_DETTAGLIO_PATRIM_NONRAPP_POLITICAINV,
///
/// Indica se includere o meno la nota a fondo pagina riguardante
/// il dettaglio di Patrimonio non rappresentabile per Calcolo del rendimento
/// NB. non usato per DIAGNOSI.
///
NOTA_DETTAGLIO_PATRIM_NONRAPP_CALCOLOREND,
///
/// Indica che è stata richiesta l'inclusione del RISCHIO sulla sezione.
///
RISCHIO,
///
/// Indica che l'area è monitorata ma il controvalore monitorato è pari a 0.
/// Vincolo impostato non lato database ma lato codice.
///
AREA_MONITORATA_CON_CONTROVOLORE_0
}
///
/// Summary description for SezioneReport
///
public class SezioneReport : ParagrafoReport
{
private Int32 _id;
private string _codice;
private string _titolo;
private string _testoIntroduttivo;
private string _testoIntroduttivoAlternativo;
private string _nota;
private string _notaAlternativa;
private string _querySql;
private string LastArea;
private string _filtrosezione;
private Int32 _ordine;
private float _height;
private List _vincolo = new List();
private ParagrafoReport _parent;
private bool _indicizzato;
private string _areaprogettocodice;
private string _areaprogettodescrizione;
private string _nomeprogetto;
private bool _areaprogettosottomonitoraggio = false;
private int _numeroprogettiinvestimento;
private bool _nuovaPaginaDopo = false;
private static int _biancoPagina = 0;
private string _intermediario = string.Empty;
public string IntermediarioSez
{
get
{
return _intermediario;
}
set
{
_intermediario = value;
}
}
public bool NuovaPaginaDopo
{
get
{
return _nuovaPaginaDopo;
}
set
{
_nuovaPaginaDopo = value;
}
}
private List _tabelleSessione;
private DataThread _dataThread;
private Int32? _ordinamentoProgettoPerAreeMonitorate;
#region Costruttori
///
/// Costruttore
///
public SezioneReport(DataThread dataThread, List tabelleSessione)
{
_indicizzato = true;
_dataThread = dataThread;
_tabelleSessione = tabelleSessione;
DocumentPDF = dataThread.DocumentPDF;
}
///
/// Costruttore
///
///
public SezioneReport(DataThread dataThread, List tabelleSessione, string Codice)
: this(dataThread, tabelleSessione)
{
_codice = Codice;
}
///
/// Costruttore.
///
/// codice della Sezione
/// Datarow che contiene i campi:
/// queryOracleSezione,
/// titoloSezione,
/// testoSezione,
/// indicizzatoSezione
/// che valorizzano le rispettive proprietà dell'oggetto Sezione.
///
public SezioneReport(DataThread dataThread, List tabelleSessione, string Codice, DataRow SourceDatarow)
: this(dataThread, tabelleSessione, Codice)
{
_titolo = SourceDatarow["titoloSezione"].ToString();
_testoIntroduttivo = SourceDatarow["testoSezione"].ToString();
_testoIntroduttivoAlternativo = SourceDatarow["testoSezioneAlternativo"] == DBNull.Value ? string.Empty : SourceDatarow["testoSezioneAlternativo"].ToString();
_nota = SourceDatarow["notaSezione"] == DBNull.Value ? string.Empty : SourceDatarow["notaSezione"].ToString();
_notaAlternativa = SourceDatarow["notaSezioneAlternativo"] == DBNull.Value ? string.Empty : SourceDatarow["notaSezioneAlternativo"].ToString();
_querySql = SourceDatarow["querySqlSezione"].ToString();
_indicizzato = SourceDatarow["indicizzatoSezione"] == DBNull.Value ? false : Convert.ToBoolean(SourceDatarow["indicizzatoSezione"]);
_nuovaPaginaDopo = SourceDatarow["nuovaPaginaDopo"] == DBNull.Value ? false : Convert.ToBoolean(SourceDatarow["nuovaPaginaDopo"]);
}
#endregion
#region Proprieta
///
/// Id della Sezione.
///
public new int Id
{
get { return _id; }
set { _id = value; }
}
///
/// Codice della Sezione (S1,S2..S88)
///
public string Codice
{
get { return _codice; }
set { _codice = value; }
}
///
/// Testo introduttivo della Sezione
///
public new string TestoIntroduttivo
{
get { return _testoIntroduttivo; }
set { _testoIntroduttivo = value; }
}
///
/// Imposta o recupera il nome del file .sql contenente la select oracle
/// da lanciare nel caso in cui la sezione sia sottoposta a query.
///
public new string QuerySql
{
get { return _querySql; }
set { _querySql = value; }
}
///
/// Imposta o recupera l'ordine di stampa della sezione.
///
public new int Ordine
{
get { return _ordine; }
set { _ordine = value; }
}
///
/// Imposta o recupera il titolo della Sezione.
///
public new string Titolo
{
get { return _titolo; }
set { _titolo = value; }
}
///
/// Imposta o recupera il testo introduttivo della Sezione
///
public new string TestoIntroduttivoAlternativo
{
get { return _testoIntroduttivoAlternativo; }
set { _testoIntroduttivoAlternativo = value; }
}
///
/// Imposta o recupera la nota della Sezione.
///
public string Nota
{
get { return _nota; }
set { _nota = value; }
}
///
/// Imposta o recupera la nota alternativa della Sezione.
///
public string NotaAlternativa
{
get { return _notaAlternativa; }
set { _notaAlternativa = value; }
}
///
/// Imposta o recupera l'altezza minima della sezione.
/// E' lo spazio che occupa la sezione sul documento pdf.
///
public float Height
{
get { return _height; }
set { _height = value; }
}
///
/// Restituisce l'oggetto Paragrafo padre dell'oggetto Sezione corrente.
///
public ParagrafoReport SezioneParent
{
get { return _parent; }
set { _parent = value; }
}
///
/// Indica se la sezione dovra essere indicizzata o no.
/// True se non specificato.
///
public new bool Indicizzato
{
get { return _indicizzato; }
set { _indicizzato = value; }
}
///
/// Imposta o ottiene la lista di Vincoli della Sezione.
///
public List Vincolo
{
get { return _vincolo; }
set { _vincolo = value; }
}
///
/// Imposta o ottiene il filtro che viene fatto a livello di Sezione.
/// Ad esempio per alcune sezione è previsto un filtro a livello di Intermediario.
/// Se il filtro è impostato la sezione verrà ripetuta per ogni intermediario.
///
public string FiltroSezione
{
get { return _filtrosezione; }
set { _filtrosezione = value; }
}
///
/// Imposta o recupera il codice dell'Area/Progetto. es "Inv","Ext".
///
public new string AreaProgettoCodice
{
get { return _areaprogettocodice; }
set { _areaprogettocodice = value; }
}
///
/// Imposta o recupera la descrizione dell'Area/Progetto. es "Investimento","Extra Rendimento".
///
public new string AreaProgettoDescrizione
{
get { return _areaprogettodescrizione; }
set { _areaprogettodescrizione = value; }
}
///
/// Imposta o recupera la descrizione del nome progetto per l'area di investimento.
///
public new string NomeProgetto
{
get { return _nomeprogetto; }
set { _nomeprogetto = value; }
}
///
/// Indica se l'area/progetto è sottoposta a monitoraggio.
///
public new bool AreaProgettoSottoMonitoraggio
{
get { return _areaprogettosottomonitoraggio; }
set { _areaprogettosottomonitoraggio = value; }
}
///
/// Imposta o recupera il numero totale dei progetti d'investimento.
///
public new int NumeroProgettiInvestimento
{
get { return _numeroprogettiinvestimento; }
set { _numeroprogettiinvestimento = value; }
}
///
/// Valorizzata con l'ordinamento (del progetto cui la sezione appartiene) nel caso ci siano più progetti
/// con diverso ordinamento nella specifica Area di Monitortaggio.
///
public new Int32? OrdinamentoProgettoPerAreeMonitorate { get { return _ordinamentoProgettoPerAreeMonitorate; } set { _ordinamentoProgettoPerAreeMonitorate = value; } }
#endregion
///
/// Disegna la Sezione.
/// Carica i dati della sezione attraverso la LoadDataSection.
/// Se e solo se i dati per la sezione esistono verranno stampate il capitolo e il paragrafo relativo alla sezione e la sezione stessa.
///
public new void Disegna()
{
//float DimensioneTortaChart = 140;
//float minimumHeight = 0;
if (_filtrosezione.ToLower() == "intermediario")
_dataThread.Intermediario = _parent.ParagrafoParent.Intermediario;
else if (_filtrosezione.ToLower() == string.Empty)
_dataThread.Intermediario = string.Empty;
DataSectionResult data = LoadDataSection(); // Carica i dati necessari alla Sezione.
_dataThread.Data = data;
if (UtilityManager.getAppSetting("bug") != String.Empty)
{
foreach (string notsez in @UtilityManager.getAppSetting("bug").ToString().Split(';'))
if (notsez.Equals(_codice)) data.Esito = 0;
}
if (data.Esito > 0)
{
_height = LoadHeight(data.Esito); // recupera l'altezza minima necessaria alla sezione per essere stampata sulla pagina.
if (BloccaStampaPERUlterioriVincoli() == false)
{
StampaCapitolo();
StampaParagrafo();
StampaSezione();
}
}
// se sto stampando l'ultima sezione, devo richiamare la stampa delle note del document :
// questo perchè la logica della stampa delle note è stata spostata nel document.addPage, ma per l'ultima pagina questo metodo non è richiamato.
// cerco qual'è l'ultima sezione da stampare.
DataRow drLast = _dataThread.Schema.Rows[_dataThread.Schema.Rows.Count - 1];
if (_codice == drLast["codiceSezione"].ToString())
{
_dataThread.DocumentPDF.StampaNote();// stampo le note rimaste da stampare.
//If the last page is white remove it
if (_biancoPagina == 1)
_dataThread.DocumentPDF.RemoveLastPage(_dataThread.DocumentPDF.CurrentPage - 1);
}
}
///
/// Recupera l'altezza minima necessaria alla sezione per essere stampata sulla pagina.
///
///
///
private float LoadHeight(int numeroRigheSezione)
{
float altezza = 0;
float DimensionRow = 23;
float DimensioneTortaChart = 140;
switch (_codice)
{
case "S26":
altezza = (numeroRigheSezione + 1) * DimensionRow + 30;
break;
case "S31":
if (_vincolo.Contains(TipologiaVisualizzazione.TORTA))
altezza = DimensioneTortaChart;
else
altezza = DimensionRow * numeroRigheSezione;
break;
case "S32":
altezza = DimensioneTortaChart;
break;
case "S43":
altezza = 0;
break;
case "S48":
altezza = 3 * DimensionRow + 40;
break;
case "S76":
case "S76BIS":
altezza = DimensionRow * 4 + 40;
break;
case "S80":
altezza = (DimensionRow * 6 + 50) * 2; // la S80 e la S80BIS vanno stampate sulla stessa pagina
break;
#region S82
case "S82":
//SEZIONE A DIMENSIONE FISSA
altezza = DimensionRow * 7 + 40;
break;
#endregion
#region S82BIS
case "S82BIS":
//SEZIONE A DIMENSIONE FISSA
altezza = DimensionRow * 7;
break;
#endregion
#region S83
case "S83":
//SEZIONE A DIMENSIONE FISSA
altezza = DimensionRow * 7;
break;
#endregion
#region S84
case "S84":
//aggiungo spazio per la nota
altezza = 300 + 30;
break;
#endregion
#region S85
case "S85":
if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
//Almeno devo poter disegnare il grafico più considero uno spazio 20 tra tabella e grafico e 3 righe di tabella (1 riga più header e totale, o 1 riga più header e cambio pagina)
altezza = DimensioneTortaChart + 20 + DimensionRow * 2;
else
//Almeno devo poter disegnare il grafico
altezza = DimensioneTortaChart;
break;
#endregion
#region S86
case "S86":
if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
//Almeno devo poter disegnare il grafico più considero uno spazio 20 tra tabella e grafico e 3 righe di tabella (1 riga più header e totale, o 1 riga più header e cambio pagina)
altezza = DimensioneTortaChart + 20 + DimensionRow * 2;
else
//Almeno devo poter disegnare il grafico
altezza = DimensioneTortaChart;
break;
#endregion
#region S88
case "S88":
altezza = DimensionRow * 2 + 40;
break;
#endregion
default:
altezza = DimensionRow * numeroRigheSezione;
break;
}
return altezza;
}
///
/// Stampa i titoli, sottotitoli e testi introduttivo dei capitoli.
/// La funzione viene richiamata per ogni sezione che deve essere disegnata,
/// sarà la proprietà CheckStampaElemento che indicherà se i testi degli oggetti verranno o meno stampati.
/// Attraverso il field _parent si ha accesso a tutte le proprietà settate a livello di capitolo.
///
private void StampaCapitolo()
{
CapitoloReport Capitolo = _parent.ParagrafoParent;
// Stampa il Capitolo.
if (Capitolo.CheckStampaElemento)
{
//missing page break before chapter 8 in DIAGNOSI_CSRMRZ73E31A944M
//if (Capitolo.Titolo == "Patrimonio finanziario altri Istituti")// && DocumentPDF.checkMargin(300))
// DocumentPDF.addPage();
// if (Capitolo.Titolo == "Patrimonio immobiliare e altro patrimonio" && DocumentPDF.checkMargin(115))
// DocumentPDF.addPage();
// if (Capitolo.Titolo == "Patrimonio finanziario" && DocumentPDF.checkMargin(115))
// DocumentPDF.addPage();
//if (Capitolo.Titolo == "Patrimonio immobiliare e altro patrimonio" && DocumentPDF.checkMargin(115))
// DocumentPDF.addPage();
// if (Capitolo.Titolo == "Patrimonio finanziario" && DocumentPDF.checkMargin(115))
// DocumentPDF.addPage();
if (Capitolo.StampaInNuovaPagina)
if ((_codice == "S57") || (_codice == "S146"))
DocumentPDF.setPageTitolo(UtilityBusinessLayer.ReplaceVariables(Capitolo.Titolo, _dataThread), true);
else
DocumentPDF.setPageTitolo(UtilityBusinessLayer.ReplaceVariables(Capitolo.Titolo, _dataThread));
else
if (_codice == "S57")
DocumentPDF.setChapterTitolo(UtilityBusinessLayer.ReplaceVariables(Capitolo.Titolo, _dataThread), _height, true);
else
DocumentPDF.setChapterTitolo(UtilityBusinessLayer.ReplaceVariables(Capitolo.Titolo, _dataThread), _height);
if (Capitolo.TestoIntroduttivo != string.Empty)
// Se è stato selezionato dall'albero il dettaglio dei prodotti raggruppati per area di bisogno,
// il testo introduttivo del capitolo da stampare cambia.
if (_codice == "S43" || _codice == "S47" & _vincolo.Contains(TipologiaVisualizzazione.RAGGRUPPAMENTO_PER_AREA) & _dataThread.ReportType().TipoReport == TipoReport.MONITORAGGIO )
{
DocumentPDF.setChapterHeader(UtilityBusinessLayer.ReplaceVariables(Capitolo.TestoIntroduttivoAlternativo, _dataThread), 0, 520, 8);
}
else
if (_codice == "S57")
DocumentPDF.setChapterHeader(UtilityBusinessLayer.ReplaceVariables(Capitolo.TestoIntroduttivo, _dataThread), true);
else
{
DocumentPDF.setChapterHeader(UtilityBusinessLayer.ReplaceVariables(Capitolo.TestoIntroduttivo, _dataThread), 0, 520, 8);
if ((_codice == "S43" || _codice == "S43BIS") && _dataThread.TipoReport.ToUpper().Equals("MONITORAGGIO"))
{
DocumentPDF.setLastPos(0);
}
}
Capitolo.CheckStampaElemento = false;
}
}
///
/// Stampa i titoli, sottotitoli e testi introduttivo dei paragrafi.
/// La funzione viene richiamata per ogni sezione che deve essere disegnata,
/// sarà la proprietà CheckStampaElemento che indicherà se i testi degli oggetti verranno o meno stampati.
/// Attraverso il field _parent si ha accesso a tutte le proprietà settate a livello di paragrafo.
///
private void StampaParagrafo()
{
ParagrafoReport Paragrafo = _parent;
// Stampa il Paragrafo
if (Paragrafo.CheckStampaElemento)
{
// se è stato impostato lo SpazioNecessarioSezioneSuccessiva e questo spazio è maggiore
// dello spazio disponibile sul documento, viene aggiunta una nuova pagina e il testo verrò scritto a capo.
if (Paragrafo.SpazioNecessarioSezioneSuccessiva > 0)
if (DocumentPDF.checkMargin(Paragrafo.SpazioNecessarioSezioneSuccessiva))
DocumentPDF.addPage();
if (_codice == "S134" || _codice == "S134BIS")
{
if (DocumentPDF.getLastPos() > 200)
DocumentPDF.addPage();
}
if (Paragrafo.Indicizzato)
{
if ((_dataThread.TipoReport.ToUpper().Equals("DIAGNOSI")) && (_codice == "S162"))
{
DocumentPDF.setSezTitolo(UtilityBusinessLayer.ReplaceVariables(Paragrafo.Titolo, _dataThread)); //titolo del paragrafo.
}
else if (_dataThread.TipoReport.ToUpper().Equals("DIAGNOSI"))
{
DocumentPDF.setSezTitoloDiagnosi(UtilityBusinessLayer.ReplaceVariables(Paragrafo.Titolo, _dataThread)); //titolo del paragrafo.
}
else
{
if (_codice != "S43BIS" && _codice != "S43")
DocumentPDF.setSezTitolo(UtilityBusinessLayer.ReplaceVariables(Paragrafo.Titolo, _dataThread)); //titolo del paragrafo.
else
DocumentPDF.setSezTitoloWithoutNumber(UtilityBusinessLayer.ReplaceVariables(Paragrafo.Titolo, _dataThread));
}
}
//else {
// if (_codice == "S43BIS" || _codice == "S43")
// DocumentPDF.setSezTitoloWithoutNumber(UtilityBusinessLayer.ReplaceVariables(Paragrafo.Titolo, _dataThread)); //titolo del paragrafo.
//}
//switch (_dataThread.TipoReport.ToUpper())
//{
// case "DIAGNOSI":
// if (Paragrafo.Indicizzato)
// {
// DocumentPDF.setSezTitoloDiagnosi(UtilityBusinessLayer.ReplaceVariables(Paragrafo.Titolo, _dataThread)); //titolo del paragrafo.
// }
// break;
// default:
// if (((_codice == "S43BIS") || (_codice == "S43")) && (!Paragrafo.Indicizzato))
// DocumentPDF.setSezTitoloWithoutNumber(UtilityBusinessLayer.ReplaceVariables(Paragrafo.Titolo, _dataThread));
// else if (((_codice != "S43BIS") && (_codice != "S43")) && (Paragrafo.Indicizzato))
// {
// DocumentPDF.setSezTitolo(UtilityBusinessLayer.ReplaceVariables(Paragrafo.Titolo, _dataThread));
// }
// break;
//}
if (!string.IsNullOrEmpty(Paragrafo.SottoTitolo) && Paragrafo.SottoTitolo.Trim().Length > 0)
DocumentPDF.setTitolo(UtilityBusinessLayer.ReplaceVariables(Paragrafo.SottoTitolo, _dataThread));//sotto titolo del paragrafo.usato per i progetti di investimento
//testo introduttivo
DocumentPDF.setChapterHeader(UtilityBusinessLayer.ReplaceVariables(Paragrafo.TestoIntroduttivo, _dataThread));
Paragrafo.CheckStampaElemento = false;
}
}
///
/// Carica i dati.
///
///
private DataSectionResult LoadDataSection()
{
DataSectionResult dsResult = new DataSectionResult();
bool getDataSection = true;
IDataSection sezione = null;
//Report objReport = _parent.ParagrafoParent.CapitoloParent;
DocumentPDF objPDF = DocumentPDF;
switch ("DS" + _codice)
{
#region COPERTINA INDICE GLOSSARIO
case "DSCOPERTINA":
getDataSection = false;
if (_vincolo.Contains(TipologiaVisualizzazione.NO_NOMECLIENTE_PER_COPERTINA))
objPDF.creaCopertina(_dataThread.ReportType().Descrizione, false);
else
objPDF.creaCopertina(_dataThread.ReportType().Descrizione, true);
break;
case "DSINDICE":
getDataSection = false;
objPDF.creaIndice();
break;
case "DSGLOSSARIO":
getDataSection = false;
objPDF.Glossario = true;
break;
#endregion
#region DSS1
case "DSS1":
sezione = new DSS1PatrimonioComplessivo();
break;
#endregion
#region DSS2
case "DSS2":
if (_dataThread.Patrimoniobancafideuramctv > 0 & _dataThread.Patrimonioterzictv > 0)
sezione = new DSS2PatrimonioFinanziario();
else
getDataSection = false;
break;
#endregion
#region DSS6
case "DSS6":
if (_dataThread.Patrimoniobancafideuramctv > 0 & _dataThread.Patrimonioterzictv > 0)
sezione = new DSS6PatrimonioFinanziario();
else
getDataSection = false;
break;
#endregion
#region DSS10
case "DSS10":
sezione = new DSS10PatrimonioFinanziario();
break;
#endregion
#region DSS18
case "DSS18":
sezione = new DSS18PatrimonioFinanziarioRischio();
if (_dataThread.Patrimoniocomplessivototalectv == _dataThread.Patrimoniobancafideuramctv)
((DSS18PatrimonioFinanziarioRischio)sezione).onlyBF = true;
break;
#endregion
#region DSS23
case "DSS23":
sezione = new DSS23GradoCopertura();
break;
#endregion
#region DSS25
case "DSS25":
sezione = new DS25Anagrafica();
break;
#endregion
#region DSS26
case "DSS26":
sezione = new DSS26PatrimonioImmobiliare();
break;
#endregion
#region DSS27
case "DSS27":
sezione = new DSS27AltroPatrimonio();
break;
#endregion
#region DSS31
case "DSS31":
if (_dataThread.NumeroIntermediari > 1)
sezione = new DSS31PatrimonioFinanziario();
else
getDataSection = false;
break;
#endregion
#region DSS32
case "DSS32":
sezione = new DSS32PatrimonioFinanziario();
break;
#endregion
#region DSS36
case "DSS36":
//sezione = new DSS36ProfiloRischio();
// Marian
getDataSection = false;
//sezione = new DSS95ProfiloDiRischio();
break;
#endregion
#region DSS37
case "DSS37":
sezione = new DSS37PiramideModello();
break;
#endregion
#region DSS42
case "DSS42":
sezione = new DSS42RischioDiversificazione();
break;
#endregion
#region DSS43
case "DSS43":
sezione = new DSS43ProdottiAreeBisogno();
//if (_dataThread.DatiSezione.Tipo == "singleArea")
// _dataThread.SingleArea = true;
//else
// _dataThread.SingleArea = false;
break;
#endregion
#region DSS43BIS
case "DSS43BIS":
// Per le aree/progetto che non sono oggetto di monitoraggio stamperò la S43 anziché la S43BIS
if (_areaprogettosottomonitoraggio)
{
sezione = new DSS43BISProdottiAreeBisogno();
((DSS43BISProdottiAreeBisogno)sezione).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = _nomeprogetto;
}
else
{
sezione = new DSS43ProdottiAreeBisogno();
_querySql = "[C6MartPeriodico].PL_S43DettaglioProdottiBF";
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = _nomeprogetto;
if (_areaprogettocodice.ToUpper() == "CC")
_vincolo.Add(TipologiaVisualizzazione.SISTAMPA);
}
break;
#endregion
#region DSS47
case "DSS47":
if ( _dataThread.ReportType().TipoReport == TipoReport.DIAGNOSI)
getDataSection = false;
sezione = new DSS47ContoCorrenteBF();
break;
#endregion
#region DSS48
case "DSS48":
sezione = new DSS48DettaglioProdotti();
break;
#endregion
#region DSS49
case "DSS49":
sezione = new DSS49PolizzeAltriIstituti();
break;
#endregion
#region DSS50
case "DSS50":
sezione = new DSS50FondiAltriIstituti();
break;
#endregion
#region DSS51
case "DSS51":
sezione = new DSS51ContoCorrenteAI();
break;
#endregion
#region DSS56
case "DSS56":
sezione = new DSS56PatrimonioBFAreeBisogno();
break;
#endregion
#region DSS57
case "DSS57":
sezione = new DSS57ConfrontoPiramidi();
dsResult = sezione.getDataSection(_tabelleSessione, _querySql, _dataThread);
if (dsResult.Esito == 0)
{
//NEL CASO IN CUI NON CI SONO I DATI PER LA S57
sezione = new DSS56PatrimonioBFAreeBisogno();
_querySql = "[C6Mart].PL_S56PatrimonioBFAreeBisogno";
}
else
{
getDataSection = false;
}
break;
#endregion
#region DSS57BIS
case "DSS57BIS":
sezione = new DSS57BISConfrontoPiramideAttualeModello();
break;
#endregion
#region DSS75
case "DSS75":
sezione = new DSS75GradoCopertura();
break;
#endregion
#region DSS76
case "DSS76":
sezione = new DSS76PatrimonioNonRappresentabileAssettClass();
break;
#endregion
#region DSS76BIS
case "DSS76BIS":
DSS76PatrimonioNonRappresentabileAssettClass s76BIS = new DSS76PatrimonioNonRappresentabileAssettClass();
s76BIS.modalitaRappresentazione = DSS76PatrimonioNonRappresentabileAssettClass.EmodalitaRappresentazione.alternativa;
if (_dataThread.TipoReport.ToUpper() == "MONITORAGGIO")
{
// per il report di monitoraggio fase 2 le sueguenti le 2 proprietà vanno ipostate a true
s76BIS.FlagS86 = true;
s76BIS.FlagS86BIS = true;
}
sezione = new DSS76PatrimonioNonRappresentabileAssettClass();
sezione = s76BIS;
break;
#endregion
#region DSS80
case "DSS80":
sezione = new DSS80EvoluzionePiramideBisogni();
break;
#endregion
#region DSS80ALT
case "DSS80ALT":
sezione = new DSS80Alternativa();
break;
#endregion
#region DSS80BIS
case "DSS80BIS":
sezione = new DSS80BISEvoluzioneRischio();
break;
#endregion
#region DSS82
case "DSS82":
if (_areaprogettocodice.ToLower() != "inv")
{
sezione = new DSS82DatiSintetici();
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = string.Empty;
((DSS82DatiSintetici)sezione).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
}
else
getDataSection = false;
break;
#endregion
#region DSS82BIS
case "DSS82BIS":
if (_areaprogettocodice.ToLower() == "inv")
{
sezione = new DSS82DatiSinteticiBIS();
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = _nomeprogetto;
((DSS82DatiSinteticiBIS)sezione).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
}
else
getDataSection = false;
break;
#endregion
#region DSS83
case "DSS83":
//sezione = new DSS83PerformanceArea();
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = _nomeprogetto;
DataSectionResult dsResultS83 = new DataSectionResult();
DSS83PerformanceArea sezioneS83 = new DSS83PerformanceArea();
((DSS83PerformanceArea)sezioneS83).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
dsResultS83 = sezioneS83.getDataSection(_tabelleSessione, "[C6MartPeriodico].[PL_S83DatiRendimento]", _dataThread);
if (dsResultS83.Esito > 0)
{
if (dsResultS83.DatiSezione.Tables["Monitoraggio"].Rows[0]["Valore"].ToString().Trim() == "0,00 €")
_vincolo.Add(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
else
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
_vincolo.Remove(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
else
{
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
_vincolo.Remove(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
return dsResultS83;
// break;
#endregion
#region DSS84
case "DSS84":
if (VerificaPresenzaS83()) // stampo la S84 solo se la S83 viene stampata
{
sezione = new DSS84ControvaloreRisorseApportate();
((DSS84ControvaloreRisorseApportate)sezione).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
}
else
getDataSection = false;
break;
#endregion
#region DSS85
case "DSS85":
//if (VerificaPresenzaS83() || VerificaPresenzaS134BIS()) // stampo la S85 solo se la S83 viene stampata
//dsResult.Esito
//DataSetS134BIS set = (DataSetS134BIS)dsResult.DatiSezione;
if (VerificaPresenzaS134())
{
sezione = new DSS85RendimentoPortafoglio();
((DSS85RendimentoPortafoglio)sezione).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
}
else
getDataSection = false;
break;
#endregion
#region DSS86
case "DSS86":
sezione = new DSS86MacroAssetClass();
((DSS86MacroAssetClass)sezione).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
break;
#endregion
#region DSS88
case "DSS88":
sezione = new DSS88PatrimonioNonRappresentabileCalcoloRendimento();
break;
#endregion
#region DSS93
case "DSS93":
// sezione = new DSS93ControvaloreMonitoraggioPatrimonio();
getDataSection = false;
break;
#endregion
#region DSS94
case "DSS94":
//sezione = new DSS94RischioMonitoraggioPatrimonio();
getDataSection = false;
sezione = new DSS95ProfiloDiRischio();
break;
#endregion
#region DSS95
case "DSS95":
//V remove when it DSS will be implemented
sezione = new DSS95ProfiloDiRischio();
// DSS95ProfiloRischio s95 = new DSS95ProfiloRischio();
// dsResult = s95.getDataSection(_parametriReport.DataSectionParameter);
break;
#endregion
#region DSS96
case "DSS96":
sezione = new DSS96RischioMercatoRischioCredito();
break;
#endregion
#region DSS96BIS
case "DSS96BIS":
sezione = new DSS96RischioMercatoRischioCredito();
break;
#endregion
#region DSS102
case "DSS102":
//V remove when it DSS will be implemented
sezione = new DSS102DistribuzioneRischioCredito();
_dataThread.Intermediario = IntermediarioSez;
//getDataSection = false;
break;
#endregion
#region DSS103
case "DSS103":
sezione = new DSS103TabellaEmittenti();
_dataThread.Intermediario = IntermediarioSez;
break;
#endregion
#region DSS128
case "DSS128":
//V remove when it DSS will be implemented
sezione = new DSS128ProfiliRischioAdeguatezza();
// DSS128ProfiliRischioAdeguatezza s128 = new DSS128ProfiliRischioAdeguatezza();
// dsResult = s128.getDataSection(_parametriReport.DataSectionParameter);
break;
#endregion
#region DSS129
case "DSS129":
//V remove when it DSS will be implemented
sezione = new DSS129Patrimonio();
// DSS95ProfiloRischio s95 = new DSS95ProfiloRischio();
// dsResult = s95.getDataSection(_parametriReport.DataSectionParameter);
break;
#endregion
#region DSS130
case "DSS130":
//V remove when it DSS will be implemented
sezione = new DSS130PrincipaliPosizioni();
// DSS95ProfiloRischio s95 = new DSS95ProfiloRischio();
// dsResult = s95.getDataSection(_parametriReport.DataSectionParameter);
break;
#endregion
#region DSS131
case "DSS131":
//V remove when it DSS will be implemented
sezione = new DSS131ContributoAlRischio();
// DSS95ProfiloRischio s95 = new DSS95ProfiloRischio();
// dsResult = s95.getDataSection(_parametriReport.DataSectionParameter);
break;
#endregion
#region DSS132
case "DSS132":
//V remove when it DSS will be implemented
sezione = new DSS132ProfiloRischioAdeguatezza();
// DSS95ProfiloRischio s95 = new DSS95ProfiloRischio();
// dsResult = s95.getDataSection(_parametriReport.DataSectionParameter);
break;
#endregion
#region DSS133
case "DSS133":
//V remove when it DSS will be implemented
sezione = new DSS133AreeBisognoPrincProd();
// DSS95ProfiloRischio s95 = new DSS95ProfiloRischio();
// dsResult = s95.getDataSection(_parametriReport.DataSectionParameter);
break;
#endregion
#region DSS133BIS
case "DSS133BIS":
//V remove when it DSS will be implemented
sezione = new DSS133BISPrincipaliProdotti();
// DSS95ProfiloRischio s95 = new DSS95ProfiloRischio();
// dsResult = s95.getDataSection(_parametriReport.DataSectionParameter);
break;
#endregion
#region DSS134
case "DSS134":
//V remove when it DSS will be implemented
//sezione = new DSS134MonitoraggioLiquidita();//DSS134MonitoraggioLiquidita();
if ((_areaprogettocodice.ToLower() != "inv") && (_areaprogettocodice.ToLower() != "ris"))
{
// if (_areaprogettocodice.ToLower() == "inv")
//{
//_dataThread.Area = _areaprogettocodice;
//_dataThread.Progetto = _nomeprogetto;
//}
_dataThread.Area = _areaprogettocodice;
DSS134MonitoraggioLiquidita sezioneS134 = new DSS134MonitoraggioLiquidita();
((DSS134MonitoraggioLiquidita)sezioneS134).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
//else
// getDataSection = false;
DataSectionResult dsResultS134 = new DataSectionResult();
dsResultS134 = sezioneS134.getDataSection(_tabelleSessione, _querySql, _dataThread);
if (dsResultS134.Esito > 0)
{
if (dsResultS134.DatiSezione.Tables["Monitoraggio"].Rows[0]["Valore"].ToString().Trim() == "0,00 €")
{
_vincolo.Add(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
// dsResultS134.Esito = 0;
}
else
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
_vincolo.Remove(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
else
{
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
_vincolo.Remove(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
return dsResultS134;
}
else
getDataSection = false;
break;
#endregion
#region DSS135
case "DSS135":
//V remove when it DSS will be implemented
sezione = new DSS135MonitoraggioInvestimento();
if ((_areaprogettocodice.ToLower() != "inv") && (_areaprogettocodice.ToLower() != "ris"))
{
if (VerificaPresenzaS134()) // stampo la S84 solo se la S83 viene stampata
{
sezione = new DSS135MonitoraggioInvestimento();
((DSS135MonitoraggioInvestimento)sezione).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
}
else
getDataSection = false;
}
else
getDataSection = false;
break;
#endregion
#region DSS134BIS
case "DSS134BIS":
if (_areaprogettocodice.ToLower() == "inv")
{
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = _nomeprogetto;
}
_dataThread.Area = _areaprogettocodice;
sezione = new DSS134BISMonitoraggioLiqInv();
DSS134BISMonitoraggioLiqInv sezioneGraficLeft = new DSS134BISMonitoraggioLiqInv();
if ((_areaprogettocodice.ToLower() == "inv") || (_areaprogettocodice.ToLower() == "ris"))
{
((DSS134BISMonitoraggioLiqInv)sezioneGraficLeft).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
//dsResult = sezioneGraficLeft.getDataSectionGraficLeft(_tabelleSessione, "[C6MartPeriodico].PL_MP_S134MonitoraggioLiquidita", _dataThread);
dsResult = sezioneGraficLeft.getDataSection(_tabelleSessione, _querySql, _dataThread);
if (dsResult.Esito < 5)
{
sezione = new DSS134MonitoraggioLiquidita();
_codice = "S134";
_querySql = "[C6MartPeriodico].PL_MP_S134MonitoraggioLiquidita";
((DSS134MonitoraggioLiquidita)sezione).OrdinamentoProgettoPerAreeMonitorate = _ordinamentoProgettoPerAreeMonitorate;
dsResult = sezione.getDataSection(_tabelleSessione, _querySql, _dataThread);
if (dsResult.Esito > 0)
{
if (dsResult.DatiSezione.Tables["Monitoraggio"].Rows[0]["Valore"].ToString().Trim() == "0,00 €")
{
_vincolo.Add(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
else
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
_vincolo.Remove(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
else
{
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
_vincolo.Remove(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
}
// FC 11/07/2014 aggiunto controllo per vincolo area monitorata senza prodotti che partecipano al calcolo dei rendimenti
//Start
else
{
if (dsResult.Esito > 0)
{
if (dsResult.DatiSezione.Tables["Monitoraggio"].Rows[0]["Valore"].ToString().Trim() == "0,00 €")
{
_vincolo.Add(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
else
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
_vincolo.Remove(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
else
{
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
_vincolo.Remove(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0);
}
}
// End
return dsResult;
}
else
getDataSection = false;
break;
#endregion
#region DSS137
case "DSS137":
//V remove when it DSS will be implemented
sezione = new DSS137Bonus();
break;
#endregion
#region DSS138
case "DSS138":
//V remove when it DSS will be implemented
sezione = new DSS138Proventi();
break;
#endregion
#region DSS139
case "DSS139":
//V remove when it DSS will be implemented
sezione = new DSS139Scadenze();
break;
#endregion
#region DSS140
case "DSS140":
//V remove when it DSS will be implemented
sezione = new DSS140AnalisiRisparmioCharts();
break;
#endregion
#region DSS141
case "DSS141":
//V remove when it DSS will be implemented
sezione = new DSS141AnalisiRisparmioTable();
break;
#endregion
#region DSS142
case "DSS142":
//V remove when it DSS will be implemented
sezione = new DSS142DistibuzionePerRating();
break;
#endregion
#region DSS143
case "DSS143":
//V remove when it DSS will be implemented
sezione = new DSS143DistibuzionePerEmittente();
break;
#endregion
#region DSS144
case "DSS144":
//V remove when it DSS will be implemented
sezione = new DSS144DistibuzionePerScadenze();
break;
#endregion
#region DSS145
case "DSS145":
//V remove when it DSS will be implemented
sezione = new DSS145DistibuzionePerTassoRendimento();
break;
#endregion
#region DSS146
case "DSS146":
//V remove when it DSS will be implemented
sezione = new DSS146RischioDiversificazione();
break;
#endregion
#region DSS147
case "DSS147":
//V remove when it DSS will be implemented
sezione = new DSS147SintesiValute();
break;
#endregion
#region DSS148
case "DSS148":
//V remove when it DSS will be implemented
sezione = new DSS148DistribuzioneAssetClass();
break;
#endregion
#region DSS149
case "DSS149":
//V remove when it DSS will be implemented
sezione = new DSS149DettaglioProdottiAffluent();
break;
#endregion
#region DSS150
case "DSS150":
//V remove when it DSS will be implemented
sezione = new DSS150Anagrafica();
break;
#endregion
#region DSS151
case "DSS151":
//V remove when it DSS will be implemented
sezione = new DSS151ProfiloDiRischio();
break;
#endregion
#region DSS152
case "DSS152":
//V remove when it DSS will be implemented
sezione = new DSS152PatrimonioComplessivo();
break;
#endregion
#region DSS153
case "DSS153":
if (_dataThread.Patrimoniobancafideuramctv > 0 & _dataThread.Patrimonioterzictv > 0)
sezione = new DSS153PatrimonioFinanziario();
else
getDataSection = false;
break;
#endregion
#region DSS154
case "DSS154":
if (_dataThread.Patrimoniobancafideuramctv > 0 & _dataThread.Patrimonioterzictv > 0)
sezione = new DSS154PatrimonioFinanziario();
else
getDataSection = false;
break;
#endregion
#region DSS155
case "DSS155":
sezione = new DSS155PatrimonioImmobiliare();
break;
#endregion
#region DSS156
case "DSS156":
sezione = new DSS156AltroPatrimonio();
break;
#endregion
#region DSS157
case "DSS157":
sezione = new DSS157ConfrontoPiramideAttualeModello();
break;
#endregion
#region DSS158
case "DSS158":
//V remove when it DSS will be implemented
sezione = new DSS158PiramideModello();
break;
#endregion
#region DSS159
case "DSS159":
//V remove when it DSS will be implemented
sezione = new DSS159PatrimonioFinanziario();
break;
#endregion
#region DSS160
case "DSS160":
sezione = new DSS160ProdottiAreeBisogno();
//if (_dataThread.DatiSezione.Tipo == "singleArea")
// _dataThread.SingleArea = true;
//else
// _dataThread.SingleArea = false;
break;
#endregion
#region DSS162
case "DSS162":
sezione = new DSS162DettaglioProdotti();
break;
#endregion
#region DSS163
case "DSS163":
sezione = new DSS163PatrimonioFinanziario();
break;
#endregion
#region DSS164
case "DSS164":
sezione = new DSS164PolizzeAltriIstituti();
break;
#endregion
#region DSS165
case "DSS165":
sezione = new DSS165FondiAltriIstituti();
break;
#endregion
#region DSS166
case "DSS166":
sezione = new DSS166ContoCorrenteAI();
break;
#endregion
#region DSS167
case "DSS167":
//V remove when it DSS will be implemented
sezione = new DSS167DistribuzioneRischioCredito();
_dataThread.Intermediario = IntermediarioSez;
//getDataSection = false;
break;
#endregion
#region DSS168
case "DSS168":
sezione = new DSS168TabellaEmittenti();
_dataThread.Intermediario = IntermediarioSez;
break;
#endregion
#region DSS169
case "DSS169":
sezione = new DSS169RischioMercatoRischioCredito();
break;
#endregion
#region DSS170
case "DSS170":
sezione = new DSS170RischioDiversificazione();
break;
#endregion
#region DSS171
case "DSS171":
sezione = new DSS171PatrimonioNonRappresentabileAssettClass();
break;
#endregion
#region DSS331
case "DSS331":
//V remove when it DSS will be implemented
sezione = new DSS331AreeBisogno();
//getDataSection = false;
break;
#endregion
#region DSS332
case "DSS332":
sezione = new DSS332FviCS80();
break;
//V remove when it DSS will be implemented
//sezione = new DSS332FviCS80();
////getDataSection = false;
//sezione = new DSS332FviCS80_PARTE2();
//break;
#endregion
#region DSS333
case "DSS333":
//V remove when it DSS will be implemented
//sezione = new DSS333Fonditalia80(); DSS333Interfund80();
sezione = new DSS333Fonditalia80();
//getDataSection = false;
break;
#endregion
#region DSS334
case "DSS334":
//V remove when it DSS will be implemented
//sezione = new DSS334Interfund80();
sezione = new DSS334CrescitaProt80();
//getDataSection = false;
break;
#endregion
default:
//return false;
break;
}
try
{
foreach (string notsez in @UtilityManager.getAppSetting("bug").ToString().Split(';'))
if (notsez.Equals(_codice)) getDataSection = false;
}
catch { }
if (getDataSection)
dsResult = sezione.getDataSection(_tabelleSessione, _querySql, _dataThread);
return dsResult;
}
///
/// Verifica se la S83 contiene dati e se il controvalore monitorato è diverso da 0
/// La presenza della S84 e S85 sono vincolate al fatto che la S83 deve essere stata stampata.
///
private bool VerificaPresenzaS83()
{
DataSectionResult dsResultS83 = new DataSectionResult();
DSS83PerformanceArea sezioneS83 = new DSS83PerformanceArea();
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = _nomeprogetto;
dsResultS83 = sezioneS83.getDataSection(_tabelleSessione, "[C6MartPeriodico].[PL_S83DatiRendimento]", _dataThread);
if (dsResultS83.Esito > 0)
if (dsResultS83.DatiSezione.Tables["Monitoraggio"].Rows[0]["Valore"].ToString().Trim() != "0,00 €")
return true;
else
return false;
else
return false;
}
private bool VerificaPresenzaS134()
{
DataSectionResult dsResultS134 = new DataSectionResult();
DSS134MonitoraggioLiquidita sezioneS134 = new DSS134MonitoraggioLiquidita();
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = _nomeprogetto;
dsResultS134 = sezioneS134.getDataSection(_tabelleSessione, "[C6MartPeriodico].[PL_MP_S134MonitoraggioLiquidita]", _dataThread);
if (dsResultS134.Esito > 0)
if (dsResultS134.DatiSezione.Tables["Monitoraggio"].Rows[0]["Valore"].ToString().Trim() != "0,00 €")
return true;
else
return false;
else
return false;
}
private bool VerificaPresenzaS134BIS()
{
DataSectionResult dsResultS134BIS = new DataSectionResult();
DSS134MonitoraggioLiquidita sezioneS134 = new DSS134MonitoraggioLiquidita();
_dataThread.Area = _areaprogettocodice;
_dataThread.Progetto = _nomeprogetto;
dsResultS134BIS = sezioneS134.getDataSection(_tabelleSessione, "[C6MartPeriodico].[PL_MP_S134BISMonitoraggioLiqInv]", _dataThread);
if (dsResultS134BIS.Esito > 0)
//if (dsResultS134.DatiSezione.Tables["Monitoraggio"].Rows[0]["Valore"].ToString().Trim() != "0,00 €")
return true;
//else
// return false;
else
return false;
}
///
/// Disegna la Sezione.
/// Rimpiazza il loadSection.
///
///
private void StampaSezione()
{
_dataThread.SezioneReport = this;
switch (_codice)
{
#region S1
case "S1":
//_dataThread.Data.DatiSezione.setCodiceRete(_dataThread.Rete);
S1 sezione1 = new S1();
//sezione1.setTitolo(_dataThread.DatiSezione.Titolo);
//this.t
sezione1.writeSezione(_dataThread);
break;
#endregion
#region S2
case "S2":
S2 sezione2 = new S2();
//sezione2.setTitolo(_dataThread.DatiSezione.Titolo);
//if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
sezione2.writeSezioneCombo(_dataThread);
else
sezione2.writeSezione(_dataThread);
break;
#endregion
#region S6
case "S6":
S6 sezione6 = new S6();
if (_vincolo.Contains(TipologiaVisualizzazione.TORTA))
sezione6.writeSezione(_dataThread);
//else
// sezione6.writeSezioneIsto(_dataThread);
break;
#endregion
#region S10
case "S10":
S10 sezione10 = new S10();
//sezione10.setTitolo(_dataThread.DatiSezione.Titolo);
if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
sezione10.writeSezioneCombo(_dataThread);
else
sezione10.writeSezione(_dataThread);
break;
#endregion
#region S18
case "S18":
S18 sezione18 = new S18();
sezione18.setLegend();
sezione18.setIndice();
//sezione18.setTitolo(_dataThread.DatiSezione.Titolo);
sezione18.writeSezione(_dataThread);
break;
#endregion
#region S23
case "S23":
S23 sezione23 = new S23();
//sezione23.setTitolo(_dataThread.DatiSezione.Titolo);
if (_dataThread.profiloIsAct)
sezione23.writeSezione(_dataThread);
else
sezione23.writeSezioneSenzaProfilo(_dataThread);
break;
#endregion
#region S25
case "S25":
//if (!_dataThread.modalitàAnonima)
//{
S25 sezione25 = new S25();
//sezione25.setTitolo(_dataThread.DatiSezione.Titolo);
sezione25.writeSezione(_dataThread);
//}
break;
#endregion
#region S26
case "S26":
S26 sezione26 = new S26();
//sezione26.setTitolo(_dataThread.DatiSezione.Titolo);
sezione26.writeSezione(_dataThread);
break;
#endregion
#region S27
case "S27":
S27 sezione27 = new S27();
//sezione27.setTitolo(_dataThread.DatiSezione.Titolo);
sezione27.writeSezione(_dataThread);
break;
#endregion
#region S31
case "S31":
S31 sezione31 = new S31();
//sezione31.setTitolo(_dataThread.DatiSezione.Titolo);
if (_vincolo.Contains(TipologiaVisualizzazione.TORTA))
sezione31.writeSezioneTorta(_dataThread);
else
sezione31.writeSezione(_dataThread);
break;
#endregion
#region S32
case "S32":
S32 sezione32 = new S32();
//sezione32.setTitolo(_dataThread.DatiSezione.Titolo);
if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
sezione32.writeSezioneCombo(_dataThread);
else
sezione32.writeSezione(_dataThread);
break;
#endregion
#region S36
case "S36":
//S36 sezione36 = new S36();
//sezione36.writeSezione(_dataThread);
// Marian
S95 sezione95 = new S95();
if (_dataThread.profiloIsAct)
sezione95.writeSezione(_dataThread);
break;
#endregion
#region S37
case "S37":
S37 sezione37 = new S37();
//sezione37.setTitolo(_dataThread.DatiSezione.Titolo);
sezione37.writeSezione(_dataThread);
break;
#endregion
#region S42
case "S42":
S42 sezione42 = new S42();
////sezione37.setTitolo(_dataThread.DatiSezione.Titolo);
sezione42.TestoIntroduttivo = TestoIntroduttivo;
sezione42.TestoTitolo = Titolo;
//sezione42.setTitolo("Set titolo");
sezione42.writeSezione(_dataThread);
break;
#endregion
#region S43
case "S43":
S43 sezione43 = new S43();
sezione43.writeSezione(_dataThread);
break;
#endregion
#region S43BIS
case "S43BIS":
// Per le aree/progetto che non sono oggetto di monitoraggio stamperò la S43 anziché la S43BIS
if (_areaprogettosottomonitoraggio)
{
S43BIS sezioneS43BIS = new S43BIS();
sezioneS43BIS.VersatoNetto_UtilePerdita = false;
sezioneS43BIS.setTitolo(_titolo);
sezioneS43BIS.Area = _areaprogettocodice;
sezioneS43BIS.Progetto = _nomeprogetto;
sezioneS43BIS.writeSezione(_dataThread);
}
else
{
S43 sezione43AreaProgettoNonMonitorata = new S43();
//sezione43AreaProgettoNonMonitorata.TitoloSezione = _titolo;
sezione43AreaProgettoNonMonitorata.Area = _areaprogettocodice;
sezione43AreaProgettoNonMonitorata.Progetto = _nomeprogetto;
//_dataThread.Area = _areaprogettocodice;
//_dataThread.Progetto = _nomeprogetto;
sezione43AreaProgettoNonMonitorata.Area = _areaprogettocodice;
sezione43AreaProgettoNonMonitorata.Progetto = _nomeprogetto;
sezione43AreaProgettoNonMonitorata.OrdinamentoProgetto =_ordinamentoProgettoPerAreeMonitorate.ToString();
if (_areaprogettocodice.ToLower() == "cc")
{
if (_areaprogettocodice.ToLower() != LastArea)
{
sezione43AreaProgettoNonMonitorata.MostraTitoloSezione = false;
LastArea = _areaprogettocodice.ToLower();
sezione43AreaProgettoNonMonitorata.writeSezione(_dataThread);
NuovaPaginaDopo = false;
}
}
else
{
if (_areaprogettocodice.ToLower() == "na")
sezione43AreaProgettoNonMonitorata.MostraTitoloSezione = false;
sezione43AreaProgettoNonMonitorata.writeSezione(_dataThread);
}
}
break;
#endregion
#region S47
case "S47":
S47 sezione47 = new S47();
//sezione47.setTitolo(_dataThread.DatiSezione.Titolo);
if ( _dataThread.ReportType().TipoReport != TipoReport.DIAGNOSI)
sezione47.writeSezione(_dataThread);
break;
#endregion
#region S48
case "S48":
S48 sezione48 = new S48();
//sezione48.setTitolo(_dataThread.DatiSezione.Titolo);
sezione48.writeSezione(_dataThread);
break;
#endregion
#region S49
case "S49":
S49 sezione49 = new S49();
//sezione49.setTitolo(_dataThread.DatiSezione.Titolo);
sezione49.writeSezione(_dataThread);
break;
#endregion
#region S50
case "S50":
S50 sezione50 = new S50();
//sezione50.setTitolo(_dataThread.DatiSezione.Titolo);
sezione50.writeSezione(_dataThread);
break;
#endregion
#region S51
case "S51":
S51 sezione51 = new S51();
//sezione51.setTitolo(_dataThread.DatiSezione.Titolo);
sezione51.writeSezione(_dataThread);
break;
#endregion
#region S56
case "S56":
S56 sezione56 = new S56();
//sezione56.setTitolo(_dataThread.DatiSezione.Titolo);
sezione56.writeSezione(_dataThread);
break;
#endregion
#region S57
case "S57":
DataSetS57 ds57 = new DataSetS57();
if (_dataThread.Data.DatiSezione.GetType() == ds57.GetType())
{
S57 sezione57 = new S57();
//sezione57.setTitolo(_dataThread.DatiSezione.Titolo);
sezione57.writeSezione(_dataThread);
}
else
{
//NEL CASO IN CUI NON CI SONO I DATI PER LA S57
sezione56 = new S56();
//sezione56.setTitolo("Piramide attuale con rischio relativo");
sezione56.writeSezione(_dataThread);
}
break;
#endregion
#region S57BIS
case "S57BIS":
S57BIS sezione57BIS = new S57BIS();
sezione57BIS.TestoTitolo = _titolo;
sezione57BIS.TestoIntroduttivo = _testoIntroduttivo;
sezione57BIS.writeSezione(_dataThread);
break;
#endregion
#region S75
case "S75":
S75 sezione75 = new S75();
//sezione75.setTitolo(_dataThread.DatiSezione.Titolo);
//if (_dataThread.DatiSezione.Tipo == "combo" || _reportType.Descrizione != "DIAGNOSI")
sezione75.writeSezione(_dataThread);
break;
#endregion
#region S76
case "S76":
S76 sezione76 = new S76();
sezione76.modalitaRappresentazione = S76.EmodalitaRappresentazione.alternativa;
sezione76.setTitolo(_titolo);
sezione76.TestoIntroduttivo = _testoIntroduttivo;
sezione76.writeSezione(_dataThread);
break;
#endregion
#region S76BIS
case "S76BIS":
S76 sezione76BIS = new S76(S76.EmodalitaRappresentazione.alternativa);
sezione76BIS.setTitolo(_titolo);
sezione76BIS.TestoIntroduttivo = _testoIntroduttivo;
sezione76BIS.writeSezione(_dataThread);
break;
#endregion
#region S80ALT
case "S80ALT":
S80ALT sezione80ALT = new S80ALT();
sezione80ALT.setTitolo(_titolo);
sezione80ALT.TestoIntroduttivo = _testoIntroduttivo;
sezione80ALT.writeSezione(_dataThread);
break;
#endregion
#region S80
case "S80":
S80 sezione80 = new S80();
sezione80.setTitolo(_titolo);
sezione80.TestoIntroduttivo = _testoIntroduttivo;
sezione80.writeSezione(_dataThread);
break;
#endregion
#region S80BIS
case "S80BIS":
S80BIS sezione80BIS = new S80BIS();
sezione80BIS.setTitolo(_titolo);
sezione80BIS.TestoIntroduttivo = _testoIntroduttivo;
sezione80BIS.writeSezione(_dataThread);
break;
#endregion
#region S82
case "S82":
S82 sezione82 = new S82();
sezione82.setTitolo(_titolo);
sezione82.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, this);
sezione82.writeSezione(_dataThread);
break;
#endregion
#region S82BIS
case "S82BIS":
S82BIS sezione82BIS = new S82BIS();
sezione82BIS.setTitolo(_titolo);
if (_areaprogettocodice.ToLower() == "inv")
{
if (_nomeprogetto.ToLower() == "progetto investimento" && _numeroprogettiinvestimento == 1)
sezione82BIS.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, this);
else
sezione82BIS.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivoAlternativo, this, true);
}
else
sezione82BIS.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, this);
sezione82BIS.writeSezione(_dataThread);
break;
#endregion
#region S83
case "S83":
S83 sezione83 = new S83();
sezione83.HasSelectedPatrimNonRap = true;
sezione83.setTitolo(_titolo);
if (_areaprogettocodice.ToLower() == "inv")
{
if (_nomeprogetto.ToLower() == "progetto investimento" && _numeroprogettiinvestimento == 1)
sezione83.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, this);
else
sezione83.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivoAlternativo, this, true);
}
else
sezione83.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, this);
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
{
sezione83.TestoIntroduttivo = "I prodotti presenti in quest'area/progetto non contribuiscono al calcolo del rendimento. Il dettaglio viene fornito nel capitolo ''Patrimonio non rappresentabile.''";
sezione83.writeSezioneFormatoSoloTesto(_dataThread);
}
else
sezione83.writeSezione(_dataThread);
break;
#endregion
#region S84
case "S84":
S84 sezione84 = new S84();
sezione84.setTitolo(_titolo);
sezione84.TestoIntroduttivo = _testoIntroduttivo;
sezione84.writeSezione(_dataThread);
break;
#endregion
#region S85
case "S85":
S85 sezione85 = new S85();
sezione85.setTitolo(_titolo);
sezione85.TestoIntroduttivo = _testoIntroduttivo;
sezione85.writeSezione(_dataThread);
break;
#endregion
#region S86
case "S86":
S86 sezione86 = new S86();
//if (_vincolo.Contains(TipologiaVisualizzazione.NOTA_DETTAGLIO_PATRIM_NONRAPP_ASSET))
sezione86.HasSelectedPatrimNonRap = true;
sezione86.setTitolo(_titolo);
sezione86.Header = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, this);
sezione86.writeSezione(_dataThread);
break;
#endregion
#region S88
case "S88":
S88 sezione88 = new S88();
sezione88.setTitolo(_titolo);
sezione88.StampaAreaProgetto = true;
sezione88.TestoIntroduttivo = _testoIntroduttivo;
sezione88.writeSezione(_dataThread);
break;
#endregion
#region S93
//case "S93":
// S93 sezione93 = new S93();
// sezione93.setTitolo(_titolo);
// sezione93.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, _dataThread);
// sezione93.writeSezione(_dataThread);
// break;
#endregion
#region S94
case "S94":
//S94 sezione94 = new S94();
//sezione94.setTitolo(_titolo);
//sezione94.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, _dataThread);
//sezione94.writeSezione(_dataThread);
// Marian
//sezione95Monitoring.setTitolo(_titolo);
//sezione95Monitoring.TestoIntroduttivo = UtilityBusinessLayer.ReplaceVariables(_testoIntroduttivo, _dataThread);
//S95 sezione95Monitoring = new S95();
//if (_dataThread.profiloIsAct)
// sezione95Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S95
case "S95":
S95 sezione95Monitoring = new S95();
if (_dataThread.profiloIsAct)
sezione95Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S96Bis
case "S96BIS":
S96 sezione96b = new S96();
//_parametriReport.DatiSezione.setParam(_parametriReport.DataSectionParameter);
sezione96b.Titolo = _titolo;
sezione96b.TestoIntroduttivo = _testoIntroduttivo;//ReplaceVariables(_testoIntroduttivo);
sezione96b.writeSezione(_dataThread);
break;
#endregion
#region S96
case "S96":
S96 sezione96 = new S96();
//_parametriReport.DatiSezione.setParam(_parametriReport.DataSectionParameter);
//sezione96.Titolo = _titolo;
sezione96.TestoIntroduttivo = _testoIntroduttivo;//ReplaceVariables(_testoIntroduttivo);
sezione96.writeSezione(_dataThread);
break;
#endregion
#region S102
case "S102":
S102 sezioneS102 = new S102();
sezioneS102.Titolo = _titolo;
sezioneS102.TestoIntroduttivo = _testoIntroduttivo;
sezioneS102.writeSezione(_dataThread);
break;
#endregion
#region S103
case "S103":
S103 sezione103 = new S103();
//sezioneS103.Titolo = _titolo;
sezione103.TestoIntroduttivo = _testoIntroduttivo;
sezione103.writeSezione(_dataThread);
break;
#endregion
#region S128
case "S128":
S128 sezione128Monitoring = new S128();
if (_dataThread.profiloIsAct)
sezione128Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S129
case "S129":
S129 sezione129Monitoring = new S129();
if (_dataThread.profiloIsAct)
sezione129Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S130
case "S130":
S130 sezione130Monitoring = new S130();
if (_dataThread.profiloIsAct)
sezione130Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S131
case "S131":
S131 sezione131Monitoring = new S131();
if (_dataThread.profiloIsAct)
sezione131Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S132
case "S132":
S132 sezione132Monitoring = new S132();
if (_dataThread.profiloIsAct)
sezione132Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S133
case "S133":
S133 sezione133 = new S133();
if (_dataThread.profiloIsAct)
sezione133.writeSezione(_dataThread);
break;
#endregion
#region S133BIS
case "S133BIS":
S133BIS sezione133BIS = new S133BIS();
if (_dataThread.profiloIsAct)
sezione133BIS.writeSezione(_dataThread);
break;
#endregion
#region S134
case "S134":
S134 sezione134Monitoring = new S134();
sezione134Monitoring.HasSelectedPatrimNonRap = true;
//if (_dataThread.profiloIsAct)
// sezione134Monitoring.writeSezione(_dataThread);
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
{
sezione134Monitoring.TestoIntroduttivo = "I prodotti presenti in quest'area/progetto non contribuiscono al calcolo del rendimento. Il dettaglio viene fornito nel capitolo ''Patrimonio non rappresentabile.''";
sezione134Monitoring.writeSezioneFormatoSoloTesto(_dataThread);
}
else
sezione134Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S135
case "S135":
S135 sezione135Monitoring = new S135();
if (_dataThread.profiloIsAct)
sezione135Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S134BIS
case "S134BIS":
//if ((_areaprogettocodice.ToLower() == "inv") || (_areaprogettocodice.ToLower() == "ris"))
//{
// FC 11/07/2014 Commento di Bkup
//S134BIS sezione134BISMonitoringLiqInv = new S134BIS();
//sezione134BISMonitoringLiqInv.HasSelectedPatrimNonRap = true;
//if (_dataThread.profiloIsAct)
// //sezione134BISMonitoringLiqInv.writeSezioneGraficLeft(_dataThread);
// sezione134BISMonitoringLiqInv.writeSezione(_dataThread);
// FC 11/07/2014
//Start
S134BIS sezione134BISMonitoringLiqInv = new S134BIS();
sezione134BISMonitoringLiqInv.HasSelectedPatrimNonRap = true;
if (_vincolo.Contains(TipologiaVisualizzazione.AREA_MONITORATA_CON_CONTROVOLORE_0))
{
sezione134BISMonitoringLiqInv.TestoIntroduttivo = "I prodotti presenti in quest'area/progetto non contribuiscono al calcolo del rendimento. Il dettaglio viene fornito nel capitolo ''Patrimonio non rappresentabile.''";
sezione134BISMonitoringLiqInv.writeSezioneFormatoSoloTesto(_dataThread);
}
else
{
if (_dataThread.profiloIsAct)
sezione134BISMonitoringLiqInv.writeSezione(_dataThread);
}
// END
//}
break;
#endregion
#region S137
case "S137":
S137 sezione137Bonus = new S137();
if (_dataThread.profiloIsAct)
sezione137Bonus.writeSezione(_dataThread);
break;
#endregion
#region S138
case "S138":
S138 sezione138Proventi = new S138();
if (_dataThread.profiloIsAct)
sezione138Proventi.writeSezione(_dataThread);
break;
#endregion
#region S139
case "S139":
S139 sezione139Scadenze = new S139();
if (_dataThread.profiloIsAct)
sezione139Scadenze.writeSezione(_dataThread);
break;
#endregion
#region S140
case "S140":
S140 sezione140 = new S140();
if (_dataThread.profiloIsAct)
sezione140.writeSezione(_dataThread);
break;
#endregion
#region S141
case "S141":
S141 sezione141 = new S141();
if (_dataThread.profiloIsAct)
sezione141.writeSezione(_dataThread);
break;
#endregion
#region S142
case "S142":
S142 sezione142 = new S142();
if (_dataThread.profiloIsAct)
sezione142.writeSezione(_dataThread);
break;
#endregion
#region S143
case "S143":
S143 sezione143 = new S143();
if (_dataThread.profiloIsAct)
sezione143.writeSezione(_dataThread);
break;
#endregion
#region S144
case "S144":
S144 sezione144 = new S144();
if (_dataThread.profiloIsAct)
sezione144.writeSezione(_dataThread);
break;
#endregion
#region S145
case "S145":
S145 sezione145 = new S145();
if (_dataThread.profiloIsAct)
sezione145.writeSezione(_dataThread);
break;
#endregion
#region S146
case "S146":
S146 sezione146 = new S146();
if (_dataThread.profiloIsAct)
sezione146.writeSezione(_dataThread);
break;
#endregion
#region S147
case "S147":
S147 sezione147 = new S147();
if (_dataThread.profiloIsAct)
sezione147.writeSezione(_dataThread);
break;
#endregion
#region S148
case "S148":
S148 sezione148 = new S148();
if (_dataThread.profiloIsAct)
sezione148.writeSezione(_dataThread);
break;
#endregion
#region S149
case "S149":
S149 sezione149 = new S149();
if (_dataThread.profiloIsAct)
sezione149.writeSezione(_dataThread);
break;
#endregion
#region S150
case "S150":
S150 sezione150 = new S150();
if (_dataThread.profiloIsAct)
sezione150.writeSezione(_dataThread);
break;
#endregion
#region S151
case "S151":
S151 sezione151 = new S151();
if (_dataThread.profiloIsAct)
sezione151.writeSezione(_dataThread);
break;
#endregion
#region S152
case "S152":
S152 sezione152 = new S152();
if (_dataThread.profiloIsAct)
sezione152.writeSezione(_dataThread);
break;
#endregion
#region S153
case "S153":
S153 sezione153 = new S153();
//if (_vincolo.Contains(TipologiaVisualizzazione.TORTA))
sezione153.writeSezione(_dataThread);
break;
#endregion
#region S154
case "S154":
S154 sezione154 = new S154();
//sezione2.setTitolo(_dataThread.DatiSezione.Titolo);
//if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
// sezione154.writeSezioneCombo(_dataThread);
//else
sezione154.writeSezione(_dataThread);
break;
#endregion
#region S155
case "S155":
S155 sezione155 = new S155();
//sezione26.setTitolo(_dataThread.DatiSezione.Titolo);
sezione155.writeSezione(_dataThread);
break;
#endregion
#region S156
case "S156":
S156 sezione156 = new S156();
//sezione27.setTitolo(_dataThread.DatiSezione.Titolo);
sezione156.writeSezione(_dataThread);
break;
#endregion
#region S157
case "S157":
S157 sezione157 = new S157();
sezione157.TestoTitolo = _titolo;
sezione157.TestoIntroduttivo = _testoIntroduttivo;
sezione157.writeSezione(_dataThread);
break;
#endregion
#region S158
case "S158":
S158 sezione158 = new S158();
if (_dataThread.profiloIsAct)
sezione158.writeSezione(_dataThread);
break;
#endregion
#region S159
case "S159":
S159 sezione159 = new S159();
if (_dataThread.profiloIsAct)
sezione159.writeSezione(_dataThread);
break;
#endregion
#region S160
case "S160":
S160 sezione160 = new S160();
sezione160.writeSezione(_dataThread);
break;
#endregion
#region S162
case "S162":
S162 sezione162 = new S162();
//sezione48.setTitolo(_dataThread.DatiSezione.Titolo);
sezione162.writeSezione(_dataThread);
break;
#endregion
#region S163
case "S163":
S163 sezione163 = new S163();
//sezione32.setTitolo(_dataThread.DatiSezione.Titolo);
if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
sezione163.writeSezioneCombo(_dataThread);
else
sezione163.writeSezione(_dataThread);
break;
#endregion
#region S164
case "S164":
S164 sezione164 = new S164();
//sezione49.setTitolo(_dataThread.DatiSezione.Titolo);
sezione164.writeSezione(_dataThread);
break;
#endregion
#region S165
case "S165":
S165 sezione165 = new S165();
//sezione50.setTitolo(_dataThread.DatiSezione.Titolo);
sezione165.writeSezione(_dataThread);
break;
#endregion
#region S166
case "S166":
S166 sezione166 = new S166();
//sezione51.setTitolo(_dataThread.DatiSezione.Titolo);
sezione166.writeSezione(_dataThread);
break;
#endregion
#region S167
case "S167":
S167 sezioneS167 = new S167();
sezioneS167.Titolo = _titolo;
sezioneS167.TestoIntroduttivo = _testoIntroduttivo;
sezioneS167.writeSezione(_dataThread);
break;
#endregion
#region S168
case "S168":
S168 sezione168 = new S168();
//sezioneS103.Titolo = _titolo;
sezione168.TestoIntroduttivo = _testoIntroduttivo;
sezione168.writeSezione(_dataThread);
break;
#endregion
#region S169
case "S169":
S169 sezione169 = new S169();
//_parametriReport.DatiSezione.setParam(_parametriReport.DataSectionParameter);
//sezione96.Titolo = _titolo;
sezione169.TestoIntroduttivo = _testoIntroduttivo;//ReplaceVariables(_testoIntroduttivo);
sezione169.writeSezione(_dataThread);
break;
#endregion
#region S170
case "S170":
S170 sezione170 = new S170();
////sezione37.setTitolo(_dataThread.DatiSezione.Titolo);
sezione170.TestoIntroduttivo = TestoIntroduttivo;
sezione170.TestoTitolo = Titolo;
//sezione42.setTitolo("Set titolo");
sezione170.writeSezione(_dataThread);
break;
#endregion
#region S171
case "S171":
S171 sezione171 = new S171();
sezione171.modalitaRappresentazione = S171.EmodalitaRappresentazione.alternativa;
sezione171.setTitolo(_titolo);
sezione171.TestoIntroduttivo = _testoIntroduttivo;
sezione171.writeSezione(_dataThread);
break;
#endregion
#region S331
case "S331":
S331 sezione331Monitoring = new S331();
if (_dataThread.profiloIsAct)
sezione331Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S332
case "S332":
S332 sezione3 = new S332();
//sezione2.setTitolo(_dataThread.DatiSezione.Titolo);
//if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
if (_vincolo.Contains(TipologiaVisualizzazione.DOPPIA))
sezione3.writeSezioneCombo(_dataThread);
else
sezione3.writeSezione(_dataThread);
break;
#endregion
#region S333
case "S333":
S333 sezione333Monitoring = new S333();
if (_dataThread.profiloIsAct)
sezione333Monitoring.writeSezione(_dataThread);
break;
#endregion
#region S334
case "S334":
S334 sezione334Monitoring = new S334();
if (_dataThread.profiloIsAct)
sezione334Monitoring.writeSezione(_dataThread);
break;
#endregion
default:
//return false;
break;
}
//patryk
//this caused empty page to appear on random documents, commented
//Start new page for defined sections & paragraphs (in DB)
//if (Capitolo.Titolo == "Patrimonio finanziario altri Istituti" && DocumentPDF.checkMargin(300))
// DocumentPDF.addPage();
//CapitoloReport Capitolo = _parent.ParagrafoParent;
//if (Capitolo.Titolo.Contains("Patrimonio finanziario altri Istituti") && this.NuovaPaginaDopo == true)
//{
// DocumentPDF.addPage();
// _biancoPagina = 1;
//}
//else
//{
// _biancoPagina = 0;
//}
}
///
/// Nonostante i relativi id vengano recuperati dalla R6_S_Generator,
/// per alcune sezioni esistono dei vincoli per i quali tali sezioni non verranno comunque stampate.
///
private bool BloccaStampaPERUlterioriVincoli()
{
switch (_codice)
{
case "S76":
if (!_vincolo.Contains(TipologiaVisualizzazione.SISTAMPA))
return true;
else
return false;
case "S77":
if (!_vincolo.Contains(TipologiaVisualizzazione.SISTAMPA))
return true;
else
return false;
//case "S43BIS":
// if ((_vincolo.Contains(TipologiaVisualizzazione.SISTAMPA)) && (_areaprogettocodice.ToUpper() == "CC"))
// return true;
// else
// return false;
default:
return false;
}
}
///
/// Imposta tutti i vincoli alla Sezione a partire da un datatable contenente i vincoli.
///
///
public void ImpostaVincoli(DataTable datatableVincoli)
{
foreach (DataRow rVincolo in datatableVincoli.Rows)
{
switch (rVincolo["CodiceVincoloApplicativo"].ToString().Trim())
{
case "TORTA":
_vincolo.Add(TipologiaVisualizzazione.TORTA);
break;
case "BARRE":
_vincolo.Add(TipologiaVisualizzazione.BARRE);
break;
case "SINGOLA":
_vincolo.Add(TipologiaVisualizzazione.SINGOLA);
break;
case "DOPPIA":
_vincolo.Add(TipologiaVisualizzazione.DOPPIA);
break;
case "NO_CONFRONTO":
_vincolo.Add(TipologiaVisualizzazione.NO_CONFRONTO);
break;
case "CONFRONTO":
_vincolo.Add(TipologiaVisualizzazione.CONFRONTO);
break;
case "PERFORMANCE":
_vincolo.Add(TipologiaVisualizzazione.PERFORMANCE);
break;
case "VERSATONETTO_UTILEPERDITA":
_vincolo.Add(TipologiaVisualizzazione.VERSATONETTO_UTILEPERDITA);
break;
case "RENDIMENTO_DA_INIZIOANNO":
_vincolo.Add(TipologiaVisualizzazione.RENDIMENTO_DA_INIZIOANNO);
break;
case "RENDIMENTO_DA_SOTTOSCRIZIONE":
_vincolo.Add(TipologiaVisualizzazione.RENDIMENTO_DA_SOTTOSCRIZIONE);
break;
case "RAGGRUPPAMENTO_PER_AREA":
_vincolo.Add(TipologiaVisualizzazione.RAGGRUPPAMENTO_PER_AREA);
break;
case "RAGGRUPPAMENTO_PER_TIPOLOGIA":
_vincolo.Add(TipologiaVisualizzazione.RAGGRUPPAMENTO_PER_TIPOLOGIA);
break;
case "SISTAMPA":
_vincolo.Add(TipologiaVisualizzazione.SISTAMPA);
break;
case "NO_NOMECLIENTE_PER_COPERTINA":
_vincolo.Add(TipologiaVisualizzazione.NO_NOMECLIENTE_PER_COPERTINA);
break;
case "NOTA_DETTAGLIO_PATRIM_NONRAPP_ASSET":
_vincolo.Add(TipologiaVisualizzazione.NOTA_DETTAGLIO_PATRIM_NONRAPP_ASSET);
break;
case "NOTA_DETTAGLIO_PATRIM_NONRAPP_POLITICAINV":
_vincolo.Add(TipologiaVisualizzazione.NOTA_DETTAGLIO_PATRIM_NONRAPP_POLITICAINV);
break;
case "RISCHIO":
_vincolo.Add(TipologiaVisualizzazione.RISCHIO);
break;
default:
break;
}
}
}
}
}