3357 lines
190 KiB
C#
3357 lines
190 KiB
C#
using System;
|
|
using System.Data;
|
|
using ceTe.DynamicPDF.Text;
|
|
using PDFGenerator.Presentation.Section.Tables;
|
|
using PDFGenerator.Presentation.Section.Charts;
|
|
using PDFGenerator.BusinessLayer;
|
|
using ceTe.DynamicPDF;
|
|
using System.Collections;
|
|
|
|
namespace PDFGenerator.Presentation.Section
|
|
{
|
|
public class SIstogramma
|
|
{
|
|
protected string Titolo = " ";
|
|
protected DataTable tabTortaTabella;
|
|
protected DataTable tabTortaTotali;
|
|
protected DataTable tabTortaContoCorrenteBancaFideuram;
|
|
protected DataTable tabTortaLineaSelf;
|
|
protected DataTable tabTortaPatrimonioNonRappresentabile;
|
|
protected DataTable tabTotale;
|
|
protected DataTable tabTortaPartiteViaggianti;
|
|
|
|
/*** ESG DataTable delle caratteristiche ***/
|
|
protected DataTable tabCaratteristiche;
|
|
/********************************************/
|
|
|
|
private bool _noIndicizzato;
|
|
protected DataTable tabNota;
|
|
protected DocumentPDF document;
|
|
protected float dim = 0;
|
|
protected DatiTabella datitab = new DatiTabella();
|
|
protected bool salto = false;
|
|
protected int ChartHeigth = 145;
|
|
protected string _header;
|
|
protected bool _saltopaginaeffettuato = false;
|
|
|
|
/**** Direct Banker 23/03/2023 - Pino *****/
|
|
protected string DirectBanker;
|
|
protected DataTable tabMacroAssetClass;
|
|
/******************************************/
|
|
|
|
private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
|
|
|
|
|
|
|
|
public SIstogramma()
|
|
{
|
|
_noIndicizzato = false;
|
|
_header = "";
|
|
}
|
|
|
|
#region ISezione Members
|
|
protected void writeSezione(DataThread datathread)
|
|
{
|
|
int MaxRow;
|
|
bool cut = true;
|
|
DataTable vista;
|
|
Tabella tab = new Tabella();
|
|
datitab.table = tabTortaTabella;
|
|
vista = datitab.table;
|
|
|
|
if (document == null)
|
|
document = datathread.DocumentPDF;
|
|
|
|
datitab.setY(document.getLastPos());
|
|
datitab.setIsRet();
|
|
datitab.setIsLinee(1);
|
|
datitab.setHeader();
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCellSpace(0);
|
|
|
|
|
|
int rTotTortaPatrimonioNonRappresentabile = 0;
|
|
int rTotTortaContoCorrenteBancaFideuram = 0;
|
|
int rTotTortaLineaSelf = 0;
|
|
int rTotTotale = 0;
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
rTotTortaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
rTotTortaContoCorrenteBancaFideuram = tabTortaContoCorrenteBancaFideuram.Rows.Count;
|
|
|
|
if (tabTortaLineaSelf != null)
|
|
rTotTortaLineaSelf = tabTortaLineaSelf.Rows.Count;
|
|
|
|
|
|
|
|
if (tabTotale != null)
|
|
rTotTotale = tabTotale.Rows.Count;
|
|
|
|
//eventuali operazioni sul dataset
|
|
//calcola se entra nella pagina altrimenti aggiunge una nuova pagina.
|
|
float altezzaNotaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile == null ? 0 : tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
altezzaNotaPatrimonioNonRappresentabile = altezzaNotaPatrimonioNonRappresentabile * 30;
|
|
|
|
|
|
//V if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile))
|
|
//Aggiunto 30 per non far sforare la S10
|
|
if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile + 30))
|
|
document.addPage();
|
|
|
|
|
|
//if (_noIndicizzato)
|
|
// document.setTitolo("SOSTITUIRE_TITOLO");
|
|
//else
|
|
|
|
if (_noIndicizzato)
|
|
document.setTitolo(datathread.SezioneReport.Titolo);
|
|
else
|
|
{
|
|
// Inizio: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
if ((datathread.TipoReport.ToUpper() == "DIAGNOSI") && ((datathread.SezioneReport.Codice == "S153") || (datathread.SezioneReport.Codice == "S154") || (datathread.SezioneReport.Codice == "S163")))
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest"), 0, 520, 8);
|
|
|
|
}
|
|
// Fine: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
else if (datathread.TipoReport.ToUpper() == "DIAGNOSI")
|
|
{
|
|
document.setSezTitoloDiagnosi(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(Header);
|
|
}
|
|
else
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest"), 0, 520, 8);
|
|
}
|
|
|
|
}
|
|
|
|
//document.setHeaderSpace(10);
|
|
|
|
// Grafico
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(datitab.table);
|
|
view.RowFilter = "";
|
|
dati.dataTab = view.ToTable(false, this.setTableForIsto());
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 2:
|
|
dati.setHeight(ChartHeigth - 43);
|
|
break;
|
|
case 3:
|
|
dati.setHeight(ChartHeigth - 25);
|
|
break;
|
|
case 4:
|
|
dati.setHeight(ChartHeigth);
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
break;
|
|
case 5:
|
|
dati.setHeight(ChartHeigth + 24);
|
|
break;
|
|
default:
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow()+2.5)));
|
|
dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + (datitab.GetRowDim() * (datitab.getNumRow() + datitab.GetRowDim() + 10)));
|
|
break;
|
|
}
|
|
|
|
dati.setWidth(200);
|
|
Istogramma isto = new Istogramma();
|
|
//document.InsertGrafico(isto.getGrafico(dati), 360, document.getLastPos() - 11);
|
|
document.InsertGrafico(isto.getGrafico(dati), 349, document.getLastPos() - 12); /// Buona
|
|
|
|
|
|
|
|
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
var xrowDim = datitab.GetRowDim();
|
|
|
|
if (tabTortaTabella.Rows.Count == 18 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
{
|
|
xrowDim--;
|
|
|
|
}
|
|
datitab.SetRowDim(xrowDim);
|
|
|
|
while (cut)
|
|
{
|
|
if (vista.Rows.Count != 0 && document.checkMargin(datitab.GetRowDim() * (vista.Rows.Count + 2 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale) + dim))
|
|
{
|
|
MaxRow = document.getWritableRow(23, false); //23
|
|
|
|
//if (tabTortaTabella.Rows.Count > 17 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
// MaxRow = document.getWritableRow(19, false);
|
|
|
|
// ulteriore controllo per evitare che la nota sfori sul footer. Questa gestione è da rifare totalmente.
|
|
if (document.checkMargin((MaxRow + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale + altezzaNotaPatrimonioNonRappresentabile) * 23))
|
|
MaxRow -= 1;
|
|
|
|
vista.Columns.Add("ID");
|
|
int i = 0;
|
|
cut = false;
|
|
foreach (DataRow myRow in vista.Rows)
|
|
{
|
|
if (i < MaxRow - (1 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale))
|
|
myRow["ID"] = 1;
|
|
else
|
|
{
|
|
myRow["ID"] = 2;
|
|
cut = true;
|
|
}
|
|
i++;
|
|
}
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 1");
|
|
}
|
|
else
|
|
cut = false;
|
|
|
|
datitab.table = view.ToTable(false, setTableForTable());
|
|
|
|
datitab.setY(document.getLastPos());
|
|
datitab.setX(document.getMargineLeft());
|
|
//setta posizione tabella
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
|
|
dim = datitab.GetRowDim() * (datitab.getNumRow() + 1);
|
|
|
|
if (cut)
|
|
{
|
|
document.changePage(389, dim + 20);
|
|
document.nextPage(document.getMargineLeft());
|
|
datitab.setHeader();
|
|
dim = 0;
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 2");
|
|
vista = view.ToTable();
|
|
vista.Columns.Remove(vista.Columns["ID"]);
|
|
_saltopaginaeffettuato = true;
|
|
}
|
|
}
|
|
|
|
// Totale della griglia
|
|
datitab = new DatiTabella();
|
|
datitab.table = tabTortaTotali;
|
|
|
|
datitab.setY(document.getLastPos() + dim);
|
|
datitab.setX(document.getMargineLeft());
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
|
|
float yRect = datitab.getY() + 13;
|
|
float yLineHeader = datitab.getY() + 12;
|
|
|
|
// Barra colorata del footer anche estesa al grafico
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 82, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
default:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRect, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
}
|
|
|
|
//if (dati.dataTab.Rows.Count == 4)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
//else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
{
|
|
DatiTabella datitabPatrimonioNonRappresentabile = new DatiTabella();
|
|
datitabPatrimonioNonRappresentabile.table = tabTortaPatrimonioNonRappresentabile;
|
|
datitabPatrimonioNonRappresentabile.SetRowDim(xrowDim);
|
|
datitabPatrimonioNonRappresentabile.setY(document.getLastPos() + dim);
|
|
datitabPatrimonioNonRappresentabile.setX(document.getMargineLeft());
|
|
datitabPatrimonioNonRappresentabile.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabPatrimonioNonRappresentabile.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabPatrimonioNonRappresentabile.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabPatrimonioNonRappresentabile));
|
|
dim += datitabPatrimonioNonRappresentabile.GetRowDim() * datitabPatrimonioNonRappresentabile.getNumRow();
|
|
}
|
|
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
{
|
|
DatiTabella datitabContoCorrenteBancaFideuram = new DatiTabella();
|
|
|
|
datitabContoCorrenteBancaFideuram.table = tabTortaContoCorrenteBancaFideuram;
|
|
datitabContoCorrenteBancaFideuram.SetRowDim(xrowDim);
|
|
datitabContoCorrenteBancaFideuram.setY(document.getLastPos() + dim);
|
|
datitabContoCorrenteBancaFideuram.setX(document.getMargineLeft());
|
|
datitabContoCorrenteBancaFideuram.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabContoCorrenteBancaFideuram.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabContoCorrenteBancaFideuram.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabContoCorrenteBancaFideuram));
|
|
dim += datitabContoCorrenteBancaFideuram.GetRowDim() * datitabContoCorrenteBancaFideuram.getNumRow();
|
|
}
|
|
|
|
if (tabTortaLineaSelf != null)
|
|
{
|
|
DatiTabella datitabLineaSelf = new DatiTabella();
|
|
datitabLineaSelf.table = tabTortaLineaSelf;
|
|
datitabLineaSelf.SetRowDim(xrowDim);
|
|
datitabLineaSelf.setY(document.getLastPos() + dim);
|
|
datitabLineaSelf.setX(document.getMargineLeft());
|
|
datitabLineaSelf.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabLineaSelf.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabLineaSelf.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabLineaSelf));
|
|
dim += datitabLineaSelf.GetRowDim() * datitabLineaSelf.getNumRow();
|
|
}
|
|
|
|
|
|
if (tabTortaPartiteViaggianti != null)
|
|
{
|
|
DatiTabella datitabPartiteViaggianti = new DatiTabella();
|
|
datitabPartiteViaggianti.table = tabTortaPartiteViaggianti;
|
|
|
|
datitabPartiteViaggianti.setY(document.getLastPos() + dim);
|
|
datitabPartiteViaggianti.setX(document.getMargineLeft());
|
|
datitabPartiteViaggianti.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabPartiteViaggianti.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabPartiteViaggianti.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabPartiteViaggianti));
|
|
dim += datitabPartiteViaggianti.GetRowDim() * datitabPartiteViaggianti.getNumRow();
|
|
}
|
|
|
|
if (tabTotale != null)
|
|
{
|
|
DatiTabella datitabContoTotale = new DatiTabella();
|
|
tabTotale.Columns.Add();
|
|
datitabContoTotale.table = tabTotale;
|
|
|
|
datitabContoTotale.setY(document.getLastPos() + dim);
|
|
datitabContoTotale.setX(document.getMargineLeft());
|
|
datitabContoTotale.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabContoTotale.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabContoTotale.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
document.InsertTable(tab.getTabella(datitabContoTotale));
|
|
dim += datitabContoTotale.GetRowDim() * datitabContoTotale.getNumRow();
|
|
}
|
|
|
|
// Scrittura del footer sul grafico
|
|
FormatNum format = new FormatNum();
|
|
ArrayList Labels = format.CreateCustomPerc148(dati.getValMax(), dati.getValMin());
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 91, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 115, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 135, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
default:
|
|
float passo = 40.0F;
|
|
for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
if (i == 0)
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 265F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
|
|
|
|
//float passo = 40.0F; //23.5F; //294.5F
|
|
////float x = datitab.getX();
|
|
////float barWidth = dati.getWidth();
|
|
//for (int i = 0; i <= Labels.Count-1; ++i)
|
|
// if (i == 0)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 270F + i, yRect, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
// else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 270F + (passo * i), yRect, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, yRect, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
////page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, yRect, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
////page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, yRect, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
}
|
|
|
|
|
|
//if (dati.dataTab.Rows.Count == 4)
|
|
//{
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 115, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
//}
|
|
//else
|
|
//{
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 135, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
//}
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
}
|
|
|
|
protected string[] setTableForTable()
|
|
{
|
|
string[] Columns = new String[6];
|
|
//eventuali operazioni sul dataset
|
|
Columns[0] = "Descrizione";
|
|
Columns[1] = "Controvalore";
|
|
Columns[2] = "Percentuale";
|
|
Columns[3] = "Red";
|
|
Columns[4] = "Green";
|
|
Columns[5] = "Blue";
|
|
return Columns;
|
|
}
|
|
|
|
protected string[] setTableForIsto()
|
|
{
|
|
string[] Columns = new String[4];
|
|
Columns[0] = "Percentuale";
|
|
Columns[1] = "Red";
|
|
Columns[2] = "Green";
|
|
Columns[3] = "Blue";
|
|
return Columns;
|
|
}
|
|
|
|
/***** Fix per FD 30/05/2023 - Pino ****/
|
|
protected string[] setTableForIsto190()
|
|
{
|
|
string[] Columns = new String[4];
|
|
Columns[0] = "percentuale_modello";
|
|
Columns[1] = "Red";
|
|
Columns[2] = "Green";
|
|
Columns[3] = "Blue";
|
|
return Columns;
|
|
}
|
|
/***************************************/
|
|
|
|
|
|
protected string[] setTableForIstoESG()
|
|
{
|
|
string[] Columns = new String[4];
|
|
Columns[0] = "PercentualeESG";
|
|
Columns[1] = "Red";
|
|
Columns[2] = "Green";
|
|
Columns[3] = "Blue";
|
|
return Columns;
|
|
}
|
|
|
|
protected string[] setTableForTableNoControvalore()
|
|
{
|
|
string[] Columns = new String[5];
|
|
//eventuali operazioni sul dataset
|
|
Columns[0] = "Descrizione";
|
|
Columns[1] = "Percentuale";
|
|
Columns[2] = "Red";
|
|
Columns[3] = "Green";
|
|
Columns[4] = "Blue";
|
|
return Columns;
|
|
}
|
|
|
|
/*** Fix FD 30/05/2023 - Pino ***/
|
|
protected string[] setTableForFD()
|
|
{
|
|
string[] Columns = new String[6];
|
|
//eventuali operazioni sul dataset
|
|
Columns[0] = "AssetClassName";
|
|
Columns[1] = "PercentualeString";
|
|
Columns[2] = "percentuale_modello_string";
|
|
Columns[3] = "Red";
|
|
Columns[4] = "Green";
|
|
Columns[5] = "Blue";
|
|
return Columns;
|
|
}
|
|
|
|
protected string[] setTableForFDAssetClass()
|
|
{
|
|
string[] Columns = new String[6];
|
|
//eventuali operazioni sul dataset
|
|
Columns[0] = "AssetClassName";
|
|
Columns[1] = "Percentuale";
|
|
Columns[2] = "percentuale_modello";
|
|
Columns[3] = "Red";
|
|
Columns[4] = "Green";
|
|
Columns[5] = "Blue";
|
|
return Columns;
|
|
}
|
|
/********************************/
|
|
|
|
protected void writeSezioneComboSX(DataThread datathread)
|
|
{
|
|
int MaxRow;
|
|
bool cut = true;
|
|
DataTable vista;
|
|
Tabella tab = new Tabella();
|
|
|
|
datitab.table = tabTortaTabella;
|
|
vista = datitab.table;
|
|
|
|
datitab.setY(document.getLastPos());
|
|
datitab.setIsRet();
|
|
datitab.setIsLinee(1);
|
|
datitab.setHeader();
|
|
datitab.setCell(115, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCellSpace(0);
|
|
|
|
|
|
int rTotTortaPatrimonioNonRappresentabile = 0;
|
|
int rTotTortaContoCorrenteBancaFideuram = 0;
|
|
int rTotTotale = 0;
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
rTotTortaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
rTotTortaContoCorrenteBancaFideuram = tabTortaContoCorrenteBancaFideuram.Rows.Count;
|
|
|
|
if (tabTotale != null)
|
|
rTotTotale = tabTotale.Rows.Count;
|
|
|
|
//eventuali operazioni sul dataset
|
|
//calcola se entra nella pagina altrimenti aggiunge una nuova pagina. In questa sezione il # di righe è fissato
|
|
if (document.checkMargin(ChartHeigth + 20 + datitab.GetRowDim() * 2)) document.addPage();
|
|
|
|
if (_noIndicizzato)
|
|
document.setTitolo(datathread.SezioneReport.Titolo);
|
|
else
|
|
{
|
|
if (datathread.TipoReport.ToUpper() == "DIAGNOSI")
|
|
document.setSezTitoloDiagnosi(datathread.SezioneReport.Titolo);
|
|
else
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
}
|
|
document.setChapterHeader(Header);
|
|
|
|
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(datitab.table);
|
|
view.RowFilter = "";
|
|
dati.dataTab = view.ToTable(false, this.setTableForIsto());
|
|
|
|
dati.setHeight(ChartHeigth);
|
|
dati.setWidth(140);
|
|
Istogramma isto = new Istogramma();
|
|
document.InsertGrafico(isto.getGrafico(dati), 100, document.getLastPos());
|
|
dim += (ChartHeigth + 20);
|
|
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
while (cut)
|
|
{
|
|
if (vista.Rows.Count != 0 && document.checkMargin((datitab.GetRowDim() * (vista.Rows.Count + 2 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTotale)) + dim))
|
|
{
|
|
MaxRow = document.getWritableRow(datitab.GetRowDim(), false) - (int)(dim / datitab.GetRowDim()) - 1;
|
|
vista.Columns.Add("ID");
|
|
int i = 0;
|
|
cut = false;
|
|
foreach (DataRow myRow in vista.Rows)
|
|
{
|
|
|
|
if (i < MaxRow - (rTotTortaContoCorrenteBancaFideuram + rTotTotale + rTotTortaPatrimonioNonRappresentabile + 2))
|
|
myRow["ID"] = 1;
|
|
else
|
|
{
|
|
myRow["ID"] = 2;
|
|
cut = true;
|
|
}
|
|
i++;
|
|
}
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 1");
|
|
}
|
|
else
|
|
cut = false;
|
|
|
|
datitab.table = view.ToTable(false, setTableForTable());
|
|
datitab.setY(document.getLastPos() + dim);
|
|
datitab.setX(document.getMargineLeft());
|
|
//setta posizione tabella
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
dim += datitab.GetRowDim() * (datitab.getNumRow() + 1);
|
|
|
|
if (cut)
|
|
{
|
|
document.changePage(237, dim);
|
|
document.nextPage(document.getMargineLeft());
|
|
datitab.setHeader();
|
|
salto = true;
|
|
dim = 0;
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 2");
|
|
vista = view.ToTable();
|
|
vista.Columns.Remove(vista.Columns["ID"]);
|
|
}
|
|
}
|
|
|
|
datitab = new DatiTabella();
|
|
|
|
if (tabTortaTotali != null)
|
|
{
|
|
datitab.table = tabTortaTotali;
|
|
datitab.setY(document.getLastPos() + dim);
|
|
datitab.setX(document.getMargineLeft());
|
|
datitab.setCell(115, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true, 7);
|
|
datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true, 7);
|
|
datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true, 7);
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
|
|
}
|
|
|
|
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
{
|
|
DatiTabella datitabPatrimonioNonRappresentabile = new DatiTabella();
|
|
datitabPatrimonioNonRappresentabile.table = tabTortaPatrimonioNonRappresentabile;
|
|
|
|
datitabPatrimonioNonRappresentabile.setY(document.getLastPos() + dim);
|
|
datitabPatrimonioNonRappresentabile.setX(document.getMargineLeft());
|
|
datitabPatrimonioNonRappresentabile.setCell(115, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabPatrimonioNonRappresentabile.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabPatrimonioNonRappresentabile.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabPatrimonioNonRappresentabile));
|
|
dim += datitabPatrimonioNonRappresentabile.GetRowDim() * datitabPatrimonioNonRappresentabile.getNumRow();
|
|
}
|
|
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
{
|
|
DatiTabella datitabContoCorrenteBancaFideuram = new DatiTabella();
|
|
datitabContoCorrenteBancaFideuram.table = tabTortaContoCorrenteBancaFideuram;
|
|
|
|
datitabContoCorrenteBancaFideuram.setY(document.getLastPos() + dim);
|
|
datitabContoCorrenteBancaFideuram.setX(document.getMargineLeft());
|
|
datitabContoCorrenteBancaFideuram.setCell(115, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabContoCorrenteBancaFideuram.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabContoCorrenteBancaFideuram.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabContoCorrenteBancaFideuram));
|
|
dim += datitabContoCorrenteBancaFideuram.GetRowDim() * datitabContoCorrenteBancaFideuram.getNumRow();
|
|
}
|
|
|
|
if (tabTortaPartiteViaggianti != null)
|
|
{
|
|
DatiTabella datitabPartiteViaggianti = new DatiTabella();
|
|
datitabPartiteViaggianti.table = tabTortaPartiteViaggianti;
|
|
|
|
datitabPartiteViaggianti.setY(document.getLastPos() + dim);
|
|
datitabPartiteViaggianti.setX(document.getMargineLeft());
|
|
datitabPartiteViaggianti.setCell(115, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabPartiteViaggianti.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabPartiteViaggianti.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabPartiteViaggianti));
|
|
dim += datitabPartiteViaggianti.GetRowDim() * datitabPartiteViaggianti.getNumRow();
|
|
}
|
|
|
|
if (tabTotale != null)
|
|
{
|
|
DatiTabella datitabContoTotale = new DatiTabella();
|
|
tabTotale.Columns.Add();
|
|
datitabContoTotale.table = tabTotale;
|
|
|
|
datitabContoTotale.setY(document.getLastPos() + dim);
|
|
datitabContoTotale.setX(document.getMargineLeft());
|
|
datitabContoTotale.setCell(115, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true, 7);
|
|
datitabContoTotale.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true, 7);
|
|
datitabContoTotale.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true, 7);
|
|
|
|
document.InsertTable(tab.getTabella(datitabContoTotale));
|
|
dim += datitabContoTotale.GetRowDim() * datitabContoTotale.getNumRow();
|
|
}
|
|
|
|
}
|
|
|
|
protected void writeSezione167()
|
|
{
|
|
|
|
}
|
|
|
|
protected void writeSezione148(DataThread datathread)
|
|
{
|
|
int MaxRow;
|
|
bool cut = true;
|
|
DataTable vista;
|
|
Tabella tab = new Tabella();
|
|
datitab.table = tabTortaTabella;
|
|
float MargineTop;
|
|
|
|
|
|
vista = datitab.table;
|
|
|
|
if (document == null)
|
|
document = datathread.DocumentPDF;
|
|
|
|
MargineTop = document.getLastPos();
|
|
|
|
datitab.table.Columns[1].Caption = string.Empty;
|
|
|
|
|
|
datitab.setY(document.getLastPos());
|
|
datitab.setIsRet();
|
|
datitab.setIsLinee(1);
|
|
datitab.setHeader();
|
|
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// ********************Modifica Andrea ***********************************************//
|
|
datitab.setCell(0, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false, 0); // 90
|
|
//************************************************************************************//
|
|
datitab.setCell(125, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false); // 120
|
|
datitab.setCellSpace(0);
|
|
|
|
int rTotTortaPatrimonioNonRappresentabile = 0;
|
|
int rTotTortaContoCorrenteBancaFideuram = 0;
|
|
int rTotTortaLineaSelf = 0;
|
|
int rTotTotale = 0;
|
|
int imposs = 1000;
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
rTotTortaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
rTotTortaContoCorrenteBancaFideuram = tabTortaContoCorrenteBancaFideuram.Rows.Count;
|
|
|
|
if (tabTortaLineaSelf != null)
|
|
rTotTortaLineaSelf = tabTortaLineaSelf.Rows.Count;
|
|
|
|
|
|
|
|
if (tabTotale != null && imposs == 3)
|
|
rTotTotale = tabTotale.Rows.Count;
|
|
|
|
//eventuali operazioni sul dataset
|
|
//calcola se entra nella pagina altrimenti aggiunge una nuova pagina.
|
|
float altezzaNotaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile == null ? 0 : tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
altezzaNotaPatrimonioNonRappresentabile = altezzaNotaPatrimonioNonRappresentabile * 30;
|
|
|
|
|
|
//V if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile))
|
|
//Aggiunto 30 per non far sforare la S10
|
|
if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile + 30))
|
|
document.addPage();
|
|
|
|
|
|
//if (_noIndicizzato)
|
|
// document.setTitolo("SOSTITUIRE_TITOLO");
|
|
//else
|
|
|
|
if (_noIndicizzato)
|
|
document.setTitolo(datathread.SezioneReport.Titolo);
|
|
else
|
|
{
|
|
// Inizio: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
if ((datathread.TipoReport.ToUpper() == "DIAGNOSI") && ((datathread.SezioneReport.Codice == "S153") || (datathread.SezioneReport.Codice == "S154") || (datathread.SezioneReport.Codice == "S163")))
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest,"), 0, 520, 8);
|
|
|
|
}
|
|
// Fine: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
else if (datathread.TipoReport.ToUpper() == "DIAGNOSI")
|
|
{
|
|
document.setSezTitoloDiagnosi(datathread.SezioneReport.Titolo);
|
|
|
|
if (datathread.SezioneReport.Codice == "FD148")
|
|
{
|
|
string testo = "In questa scheda è riportata la classificazione del suo patrimonio finanziario presso $/Banca/$ sulla base delle principali asset class finanziarie a cui è esposto, con evidenza del peso percentuale di ciascuna.";
|
|
document.setChapterHeader(testo.Replace("$/Banca/$", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest,"), 0, 520, 8);
|
|
}
|
|
else
|
|
document.setChapterHeader(Header);
|
|
|
|
}
|
|
else
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
|
|
// document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete), 0, 520, 8);
|
|
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest,"), 0, Convert.ToInt32(document.getLastPos()) - 10, 520, 8);
|
|
}
|
|
|
|
}
|
|
|
|
//document.setHeaderSpace();
|
|
|
|
#region Nuova Tabella
|
|
decimal totaleSelfNegFO = datathread.Periodico ? datathread.GetSelfNegativeValue("FO") : 0;
|
|
decimal totalNegativeCurrentAccountValue = datathread.Periodico ? datathread.TotalNegativeCurrentAccountValue : 0;
|
|
decimal GPEligoFondi = datathread.GPEligoFondi;
|
|
decimal GPEligoTitoli = datathread.GPEligoTitoli;
|
|
// decimal GradoCopertura = datathread.GradoCoperturaMacroAssetInterno;
|
|
decimal PatrimonioTerzi = datathread.Patrimonioterzictv;
|
|
decimal ProdottiNonRapp = datathread.PatrimonioNonRappresentabileFI;
|
|
decimal PatrBancaSez = datathread.PatrimonioBancaFideuramCtvAlNettoContoCorrente - datathread.PartiteViaggiantiInvestimento - datathread.PartiteViaggiantiDisinvestimento - datathread.PatrimonioNonRappresentabileFI;
|
|
decimal GradoCopertura = PatrBancaSez / datathread.PatrimonioBancaFideuramCtvAlNettoContoCorrente * 100;
|
|
decimal PartiteViaggianti = datathread.PartiteViaggiantiInvestimento + datathread.PartiteViaggiantiDisinvestimento;
|
|
|
|
|
|
DataTable _tmpTotPF = tabTortaTotali.Copy(); //set.Tables["MacroAssetTotale"];
|
|
_tmpTotPF.Columns.Remove("Percentuale");
|
|
|
|
if (totalNegativeCurrentAccountValue != 0 || totaleSelfNegFO != 0 || GPEligoFondi < 0 || GPEligoTitoli < 0 || ((GradoCopertura >= 0 && GradoCopertura < 100) && (ProdottiNonRapp != 0 || PartiteViaggianti != 0)))
|
|
{
|
|
_tmpTotPF.Rows[0][0] = "Patrimonio /$Banca$/ (€) *".Replace("/$Banca$/", datathread.NomeRete);
|
|
}
|
|
else
|
|
{
|
|
_tmpTotPF.Rows[0][0] = "Patrimonio /$Banca$/ (€)".Replace("/$Banca$/", datathread.NomeRete);
|
|
}
|
|
|
|
DatiTabella datitabPF = new DatiTabella();
|
|
datitabPF.table = _tmpTotPF;
|
|
|
|
|
|
|
|
datitabPF.setY(document.getLastPos() + 10);
|
|
datitabPF.setX(document.getMargineLeft());
|
|
datitabPF.setCell(220, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true); //Andrea Modifica 14062022 190 ---> 220
|
|
//datitabPF.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabPF.setCell(130, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, false);
|
|
|
|
|
|
logger.Info(string.Concat("Periodico ", datathread.Periodico.ToString()));
|
|
|
|
if (datathread.Periodico)
|
|
{
|
|
var idModello = datathread.ReportsType.Find(f => f.Descrizione == "Monitoraggio").IdModello;
|
|
if (idModello == 6)
|
|
tab.ColoreDirectBankB = "green";
|
|
}
|
|
else
|
|
{
|
|
var idModello = datathread.ReportsType.Find(f => f.Descrizione == "Diagnosi").IdModello;
|
|
logger.Info(string.Concat("Modello ", idModello.ToString()));
|
|
|
|
if (idModello == 6)
|
|
tab.ColoreDirectBankB = "green";
|
|
}
|
|
|
|
|
|
|
|
document.InsertTable(tab.getTabella(datitabPF));
|
|
#endregion
|
|
|
|
document.setHeaderSpace(40);
|
|
|
|
|
|
#region Grafico
|
|
//// Grafico
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(datitab.table);
|
|
//view.RowFilter = "";
|
|
//dati.dataTab = view.ToTable(false, this.setTableForIsto());
|
|
|
|
//switch (dati.dataTab.Rows.Count)
|
|
//{
|
|
// case 3:
|
|
// dati.setHeight(ChartHeigth - 25);
|
|
// break;
|
|
// case 4:
|
|
// dati.setHeight(ChartHeigth);
|
|
// //dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
// break;
|
|
// case 5:
|
|
// dati.setHeight(ChartHeigth + 15);
|
|
// break;
|
|
// default:
|
|
// dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow() + 2.5)));
|
|
|
|
|
|
|
|
|
|
// break;
|
|
//}
|
|
|
|
//dati.setWidth(200);
|
|
//Istogramma isto = new Istogramma();
|
|
////document.InsertGrafico(isto.getGrafico(dati), 360, document.getLastPos() - 11);
|
|
//document.InsertGrafico(isto.getGrafico(dati), 349, document.getLastPos() - 12); /// Buona
|
|
|
|
|
|
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
#endregion
|
|
|
|
var xrowDim = datitab.GetRowDim();
|
|
|
|
if (tabTortaTabella.Rows.Count == 18 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
{
|
|
xrowDim--;
|
|
}
|
|
|
|
if (tabTortaTabella.Rows.Count == 19) // && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
{
|
|
xrowDim--;
|
|
}
|
|
|
|
datitab.SetRowDim(xrowDim);
|
|
|
|
while (cut)
|
|
{
|
|
if (vista.Rows.Count != 0 && document.checkMargin(datitab.GetRowDim() * (vista.Rows.Count + 2 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale) + dim))
|
|
{
|
|
|
|
if (datathread.Periodico)
|
|
{
|
|
var idModello = datathread.ReportsType.Find(f => f.Descrizione == "Monitoraggio").IdModello;
|
|
if (idModello == 6) // FD
|
|
MaxRow = document.getWritableRow(24, false); //23
|
|
else
|
|
MaxRow = document.getWritableRow(23, false); //23
|
|
}
|
|
else
|
|
MaxRow = document.getWritableRow(23, false); //23
|
|
|
|
//if (tabTortaTabella.Rows.Count > 17 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
// MaxRow = document.getWritableRow(19, false);
|
|
|
|
// ulteriore controllo per evitare che la nota sfori sul footer. Questa gestione è da rifare totalmente.
|
|
if (document.checkMargin((MaxRow + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale + altezzaNotaPatrimonioNonRappresentabile) * 23))
|
|
MaxRow -= 1;
|
|
|
|
vista.Columns.Add("ID");
|
|
int i = 0;
|
|
cut = false;
|
|
foreach (DataRow myRow in vista.Rows)
|
|
{
|
|
if (i < MaxRow - (1 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale))
|
|
myRow["ID"] = 1;
|
|
else
|
|
{
|
|
myRow["ID"] = 2;
|
|
cut = true;
|
|
}
|
|
i++;
|
|
}
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 1");
|
|
}
|
|
else
|
|
cut = false;
|
|
|
|
|
|
datitab.table = view.ToTable(false, setTableForTable());
|
|
|
|
if (datathread.Rete == "S" && datitab.table.Rows.Count > 18) //Andrea Rosaspina
|
|
datitab.setY(document.getLastPos() - 4);
|
|
else
|
|
datitab.setY(document.getLastPos());
|
|
|
|
datitab.setX(document.getMargineLeft());
|
|
//setta posizione tabella
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
|
|
dim = datitab.GetRowDim() * (datitab.getNumRow() + 1);
|
|
|
|
// Grafico
|
|
|
|
dati.dataTab = view.ToTable(false, this.setTableForIsto());
|
|
|
|
// Posizionamento delle barre in base al numero di righe
|
|
switch (datitab.table.Rows.Count)
|
|
{
|
|
case 1:
|
|
dati.setHeight(ChartHeigth - 63); // modifica Andrea
|
|
break;
|
|
case 2:
|
|
dati.setHeight(ChartHeigth - 42); // prova Andrea
|
|
break;
|
|
case 3:
|
|
dati.setHeight(ChartHeigth - 18); // prova Andrea
|
|
break;
|
|
case 4:
|
|
dati.setHeight(ChartHeigth);
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
break;
|
|
case 5:
|
|
dati.setHeight(ChartHeigth + 32);
|
|
break;
|
|
case 6:
|
|
dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow() + 2.5) + 3));
|
|
break;
|
|
default:
|
|
/**************************** Fix Aladdin centratura barra Pino ***************************************************/
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow() + 2.5)));
|
|
dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + ((datitab.GetRowDim() * datitab.getNumRow()) + datitab.GetRowDim() + 25));
|
|
/*******************************************************************************************************************/
|
|
|
|
/**** Fix - FD PINO 06/06/2023 ****/
|
|
if (datathread.Rete == "S" && datitab.table.Rows.Count > 18) // Andrea Rosaspina
|
|
dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow() + 3) - 4));
|
|
else
|
|
dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow() + 3) + 5));
|
|
|
|
//if (datathread.Rete == "S" && datitab.table.Rows.Count > 18) // Andrea Rosaspina
|
|
// dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow() + 3) - 4));
|
|
//else
|
|
//{
|
|
// if (datitab.table.Rows.Count > 18)
|
|
// dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow() + 3) -4));
|
|
// else
|
|
// dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow() + 3) + 5));
|
|
//}
|
|
/**************************************************************************************/
|
|
|
|
break;
|
|
}
|
|
|
|
|
|
dati.setWidth(200);
|
|
Istogramma isto = new Istogramma();
|
|
//document.InsertGrafico(isto.getGrafico(dati), 360, document.getLastPos() - 11);
|
|
document.InsertGrafico(isto.getGrafico(dati), 349, document.getLastPos() - 15); /// Buona 12
|
|
|
|
|
|
|
|
//ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
if (!_saltopaginaeffettuato)
|
|
{
|
|
//float yRectBarra = Convert.ToSingle((datitab.GetRowDim() * datitab.getNumRow()) + MargineTop + 60);
|
|
float yRectBarra = Convert.ToSingle((datitab.GetRowDim() * datitab.getNumRow()) + MargineTop + 110);
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRectBarra, 199, 23, 0, new RgbColor(255, 255, 255)));
|
|
//if(datathread.Rete == "S" && tabTortaTabella.Rows.Count == 19)
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRectBarra + 5, 199, 34, 0, new RgbColor(255, 255, 255)));
|
|
//else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRectBarra, 199, 23, 0, new RgbColor(255, 255, 255)));
|
|
}
|
|
|
|
if (cut)
|
|
{
|
|
/*** Fix - FD riposizionamento dell'indicazione del cambio pagina 06/06/2023 - Pino ****/
|
|
//document.changePage(389, dim + 20);
|
|
|
|
if (datathread.Periodico)
|
|
{
|
|
var idModello = datathread.ReportsType.Find(f => f.Descrizione == "Monitoraggio").IdModello;
|
|
if (idModello == 6) // FD
|
|
document.changePage(500, dim + 20);
|
|
else
|
|
document.changePage(389, dim + 20);
|
|
}
|
|
else
|
|
document.changePage(389, dim + 20);
|
|
/******************************************************************************************/
|
|
|
|
|
|
document.nextPage(document.getMargineLeft());
|
|
datitab.setHeader();
|
|
dim = 0;
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 2");
|
|
vista = view.ToTable();
|
|
vista.Columns.Remove(vista.Columns["ID"]);
|
|
_saltopaginaeffettuato = true;
|
|
}
|
|
}
|
|
|
|
// Totale della griglia
|
|
|
|
datitab = new DatiTabella();
|
|
datitab.table = tabTortaTotali;
|
|
|
|
datitab.setY(document.getLastPos() + dim);
|
|
datitab.setX(document.getMargineLeft());
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true, 0);
|
|
datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
|
|
|
|
float yRect = datitab.getY() + 13;
|
|
float yLineHeader = datitab.getY() + 12;
|
|
|
|
if (!_saltopaginaeffettuato)
|
|
|
|
{
|
|
// Barra colorata del footer anche estesa al grafico
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 82, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
default:
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRect, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
//if (dati.dataTab.Rows.Count == 4)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
//else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
{
|
|
DatiTabella datitabPatrimonioNonRappresentabile = new DatiTabella();
|
|
datitabPatrimonioNonRappresentabile.table = tabTortaPatrimonioNonRappresentabile;
|
|
datitabPatrimonioNonRappresentabile.SetRowDim(xrowDim);
|
|
datitabPatrimonioNonRappresentabile.setY(document.getLastPos() + dim);
|
|
datitabPatrimonioNonRappresentabile.setX(document.getMargineLeft());
|
|
datitabPatrimonioNonRappresentabile.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabPatrimonioNonRappresentabile.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabPatrimonioNonRappresentabile.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabPatrimonioNonRappresentabile));
|
|
dim += datitabPatrimonioNonRappresentabile.GetRowDim() * datitabPatrimonioNonRappresentabile.getNumRow();
|
|
}
|
|
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
{
|
|
DatiTabella datitabContoCorrenteBancaFideuram = new DatiTabella();
|
|
|
|
datitabContoCorrenteBancaFideuram.table = tabTortaContoCorrenteBancaFideuram;
|
|
datitabContoCorrenteBancaFideuram.SetRowDim(xrowDim);
|
|
datitabContoCorrenteBancaFideuram.setY(document.getLastPos() + dim);
|
|
datitabContoCorrenteBancaFideuram.setX(document.getMargineLeft());
|
|
datitabContoCorrenteBancaFideuram.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabContoCorrenteBancaFideuram.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabContoCorrenteBancaFideuram.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabContoCorrenteBancaFideuram));
|
|
dim += datitabContoCorrenteBancaFideuram.GetRowDim() * datitabContoCorrenteBancaFideuram.getNumRow();
|
|
}
|
|
|
|
if (tabTortaLineaSelf != null)
|
|
{
|
|
DatiTabella datitabLineaSelf = new DatiTabella();
|
|
datitabLineaSelf.table = tabTortaLineaSelf;
|
|
datitabLineaSelf.SetRowDim(xrowDim);
|
|
datitabLineaSelf.setY(document.getLastPos() + dim);
|
|
datitabLineaSelf.setX(document.getMargineLeft());
|
|
datitabLineaSelf.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabLineaSelf.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabLineaSelf.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabLineaSelf));
|
|
dim += datitabLineaSelf.GetRowDim() * datitabLineaSelf.getNumRow();
|
|
}
|
|
|
|
|
|
if (tabTortaPartiteViaggianti != null)
|
|
{
|
|
DatiTabella datitabPartiteViaggianti = new DatiTabella();
|
|
datitabPartiteViaggianti.table = tabTortaPartiteViaggianti;
|
|
|
|
datitabPartiteViaggianti.setY(document.getLastPos() + dim);
|
|
datitabPartiteViaggianti.setX(document.getMargineLeft());
|
|
datitabPartiteViaggianti.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitabPartiteViaggianti.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitabPartiteViaggianti.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabPartiteViaggianti));
|
|
dim += datitabPartiteViaggianti.GetRowDim() * datitabPartiteViaggianti.getNumRow();
|
|
}
|
|
|
|
if (tabTotale != null)
|
|
{
|
|
DatiTabella datitabContoTotale = new DatiTabella();
|
|
tabTotale.Columns.Add();
|
|
datitabContoTotale.table = tabTotale;
|
|
|
|
datitabContoTotale.setY(document.getLastPos() + dim);
|
|
datitabContoTotale.setX(document.getMargineLeft());
|
|
datitabContoTotale.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabContoTotale.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabContoTotale.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
document.InsertTable(tab.getTabella(datitabContoTotale));
|
|
dim += datitabContoTotale.GetRowDim() * datitabContoTotale.getNumRow();
|
|
}
|
|
|
|
// Scrittura del footer sul grafico
|
|
FormatNum format = new FormatNum();
|
|
ArrayList Labels = format.CreateCustomPerc148(dati.getValMax(), dati.getValMin());
|
|
|
|
|
|
#region Imposto la tabella per il footer del grafico
|
|
DataTable _dt = new DataTable();
|
|
for (int x = 0; x <= Labels.Count - 1; x++)
|
|
{
|
|
_dt.Columns.Add(string.Concat("P", x.ToString()), typeof(String));
|
|
}
|
|
|
|
|
|
DataRow newrow = _dt.NewRow();
|
|
|
|
int y = 0;
|
|
foreach (var item in Labels)
|
|
{
|
|
newrow[string.Concat("P", y.ToString())] = item.ToString();
|
|
y++;
|
|
}
|
|
_dt.Rows.Add(newrow);
|
|
|
|
DatiTabella datitabGrafico = new DatiTabella();
|
|
datitabGrafico.table = _dt;
|
|
|
|
float _dim = datitab.GetRowDim() * (view.Count + 1);
|
|
if (tabTortaTabella.Rows.Count == 19)
|
|
_dim = datitab.GetRowDim() * (view.Count + 1) - 20;
|
|
|
|
datitabGrafico.setY(document.getLastPos() + _dim);
|
|
datitabGrafico.setX(358);
|
|
datitabGrafico.setCell(10, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabGrafico.setCell(50, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabGrafico.setCell(50, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabGrafico.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabGrafico.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
document.InsertTable(tab.getTabella(datitabGrafico));
|
|
#endregion
|
|
|
|
|
|
if (!_saltopaginaeffettuato)
|
|
{
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
if (!datathread.SezioneReport.Codice.Equals("FD148"))
|
|
{
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 91, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
}
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 115, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 135, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
default:
|
|
//float passo = 40.0F;
|
|
//for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
// if (i == 0)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 265F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
// else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
|
|
|
|
//float passo = 40.0F; //23.5F; //294.5F
|
|
////float x = datitab.getX();
|
|
////float barWidth = dati.getWidth();
|
|
//for (int i = 0; i <= Labels.Count-1; ++i)
|
|
// if (i == 0)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 270F + i, yRect, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
// else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 270F + (passo * i), yRect, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, yRect, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
////page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, yRect, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
////page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, yRect, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//if (dati.dataTab.Rows.Count == 4)
|
|
//{
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 115, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
//}
|
|
//else
|
|
//{
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 135, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
//}
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
}
|
|
|
|
protected void writeSezione10(DataThread datathread)
|
|
{
|
|
int MaxRow;
|
|
bool cut = true;
|
|
DataTable vista;
|
|
Tabella tab = new Tabella();
|
|
|
|
datitab.table = tabTortaTabella;
|
|
|
|
vista = datitab.table;
|
|
|
|
if (document == null)
|
|
document = datathread.DocumentPDF;
|
|
|
|
datitab.setY(document.getLastPos());
|
|
datitab.setIsRet();
|
|
datitab.setIsLinee(1);
|
|
datitab.setHeader();
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCellSpace(0);
|
|
|
|
|
|
int rTotTortaPatrimonioNonRappresentabile = 0;
|
|
int rTotTortaContoCorrenteBancaFideuram = 0;
|
|
int rTotTortaLineaSelf = 0;
|
|
int rTotTotale = 0;
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
rTotTortaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
rTotTortaContoCorrenteBancaFideuram = tabTortaContoCorrenteBancaFideuram.Rows.Count;
|
|
|
|
if (tabTortaLineaSelf != null)
|
|
rTotTortaLineaSelf = tabTortaLineaSelf.Rows.Count;
|
|
|
|
|
|
|
|
if (tabTotale != null)
|
|
rTotTotale = tabTotale.Rows.Count;
|
|
|
|
//eventuali operazioni sul dataset
|
|
//calcola se entra nella pagina altrimenti aggiunge una nuova pagina.
|
|
float altezzaNotaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile == null ? 0 : tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
altezzaNotaPatrimonioNonRappresentabile = altezzaNotaPatrimonioNonRappresentabile * 30;
|
|
|
|
|
|
//V if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile))
|
|
//Aggiunto 30 per non far sforare la S10
|
|
if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile + 30))
|
|
document.addPage();
|
|
|
|
|
|
//if (_noIndicizzato)
|
|
// document.setTitolo("SOSTITUIRE_TITOLO");
|
|
//else
|
|
|
|
if (_noIndicizzato)
|
|
document.setTitolo(datathread.SezioneReport.Titolo);
|
|
else
|
|
{
|
|
// Inizio: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
if ((datathread.TipoReport.ToUpper() == "DIAGNOSI") && ((datathread.SezioneReport.Codice == "S153") || (datathread.SezioneReport.Codice == "S154") || (datathread.SezioneReport.Codice == "S163")))
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest"), 0, 520, 8);
|
|
|
|
}
|
|
// Fine: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
else if (datathread.TipoReport.ToUpper() == "DIAGNOSI")
|
|
{
|
|
document.setSezTitoloDiagnosi(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(Header);
|
|
}
|
|
else
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
|
|
/*************** modifica Aladdin 14062021 - Pino ******************************************/
|
|
datathread.SezioneReport.TestoIntroduttivo = "In questa scheda è riportata la classificazione, sulla base delle principali macro asset class finanziarie, del patrimonio che lei detiene presso /$Banca$/, con evidenza dell'esposizione, in termini percentuali, a ciascuna macro asset class.";
|
|
/*******************************************************************************************/
|
|
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest"), 0, 520, 8);
|
|
}
|
|
|
|
}
|
|
|
|
//document.setHeaderSpace(10);
|
|
|
|
#region Nuova tabella
|
|
//DatiTabella datitab1 = new DatiTabella();
|
|
//datitab1.table = tabTortaTotali;
|
|
|
|
decimal totalSelfNegGP = datathread.Periodico ? datathread.GetSelfNegativeValue("XY") : 0;
|
|
decimal totaleSelfNegFO = datathread.Periodico ? datathread.GetSelfNegativeValue("FO") : 0;
|
|
decimal totalNegativeCurrentAccountValue = datathread.Periodico ? datathread.TotalNegativeCurrentAccountValue : 0;
|
|
decimal totalePartiteViaggianti = datathread.PartiteViaggiantiDisinvestimento + datathread.PartiteViaggiantiInvestimento;
|
|
decimal GPEligoFondi = datathread.GPEligoFondi;
|
|
decimal GPEligoTitoli = datathread.GPEligoTitoli;
|
|
decimal ProdottiNonRapp = datathread.PatrimonioNonRappresentabileFI;
|
|
decimal PartiteViaggianti = datathread.PartiteViaggiantiInvestimento + datathread.PartiteViaggiantiDisinvestimento;
|
|
// decimal GradoCopertura = datathread.GradoCoperturaMacroAssetInterno;
|
|
decimal PatrBancaSez = datathread.PatrimonioBancaFideuramCtvAlNettoContoCorrente - datathread.PartiteViaggiantiInvestimento - datathread.PartiteViaggiantiDisinvestimento - datathread.PatrimonioNonRappresentabileFI;
|
|
decimal GradoCopertura = PatrBancaSez / datathread.PatrimonioBancaFideuramCtvAlNettoContoCorrente * 100;
|
|
decimal PatrimonioTerzi = datathread.Patrimonioterzictv;
|
|
|
|
DataTable _tmpTotPF = tabTortaTotali.Copy(); //set.Tables["MacroAssetTotale"]; ((GradoCopertura >= 0 && GradoCopertura < 100) && (ProdottiNonRapp != 0 || PartiteViaggianti != 0))
|
|
_tmpTotPF.Columns.Remove("Percentuale");
|
|
|
|
if (totalNegativeCurrentAccountValue != 0 || totaleSelfNegFO != 0 || GPEligoFondi < 0 || GPEligoTitoli < 0 || ((GradoCopertura >= 0 && GradoCopertura < 100) && (ProdottiNonRapp != 0 || PartiteViaggianti != 0)))
|
|
{
|
|
_tmpTotPF.Rows[0][0] = "Patrimonio /$Banca$/ (€) *".Replace("/$Banca$/", datathread.NomeRete);
|
|
}
|
|
else
|
|
{
|
|
_tmpTotPF.Rows[0][0] = "Patrimonio /$Banca$/ (€)".Replace("/$Banca$/", datathread.NomeRete);
|
|
}
|
|
|
|
DatiTabella datitabPF = new DatiTabella();
|
|
datitabPF.table = _tmpTotPF;
|
|
|
|
|
|
datitabPF.setY(document.getLastPos() + 10);
|
|
datitabPF.setX(document.getMargineLeft());
|
|
if (datathread.Rete == "W")
|
|
{
|
|
datitabPF.setCell(220, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabPF.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, false);
|
|
}
|
|
else
|
|
{
|
|
datitabPF.setCell(190, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitabPF.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabPF.setCell(130, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, false);
|
|
}
|
|
document.InsertTable(tab.getTabella(datitabPF));
|
|
#endregion
|
|
|
|
document.setHeaderSpace(50);
|
|
|
|
#region Grafico
|
|
// Grafico
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(datitab.table);
|
|
view.RowFilter = "";
|
|
dati.dataTab = view.ToTable(false, this.setTableForIsto());
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
dati.setHeight(ChartHeigth - 25);
|
|
break;
|
|
case 4:
|
|
dati.setHeight(ChartHeigth);
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
break;
|
|
case 5:
|
|
dati.setHeight(ChartHeigth + 24);
|
|
break;
|
|
case 6:
|
|
dati.setHeight(ChartHeigth + 49);
|
|
break;
|
|
default:
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow()+2.5)));
|
|
/**************************** Fix Aladdin centratura barra Pino ***************************************************/
|
|
//dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + (datitab.GetRowDim() * (datitab.getNumRow() + 1)));
|
|
dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + ((datitab.GetRowDim() * datitab.getNumRow()) + datitab.GetRowDim() + 10));
|
|
/*******************************************************************************************************************/
|
|
break;
|
|
}
|
|
|
|
|
|
dati.setWidth(200);
|
|
Istogramma isto = new Istogramma();
|
|
//document.InsertGrafico(isto.getGrafico(dati), 360, document.getLastPos() - 11);
|
|
document.InsertGrafico(isto.getGrafico(dati), 349, document.getLastPos() - 12); /// Buona
|
|
#endregion
|
|
|
|
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
var xrowDim = datitab.GetRowDim();
|
|
|
|
if (tabTortaTabella.Rows.Count == 18 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
{
|
|
xrowDim--;
|
|
|
|
}
|
|
datitab.SetRowDim(xrowDim);
|
|
|
|
while (cut)
|
|
{
|
|
if (vista.Rows.Count != 0 && document.checkMargin(datitab.GetRowDim() * (vista.Rows.Count + 2 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale) + dim))
|
|
{
|
|
MaxRow = document.getWritableRow(23, false); //23
|
|
|
|
//if (tabTortaTabella.Rows.Count > 17 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
// MaxRow = document.getWritableRow(19, false);
|
|
|
|
// ulteriore controllo per evitare che la nota sfori sul footer. Questa gestione è da rifare totalmente.
|
|
if (document.checkMargin((MaxRow + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale + altezzaNotaPatrimonioNonRappresentabile) * 23))
|
|
MaxRow -= 1;
|
|
|
|
vista.Columns.Add("ID");
|
|
int i = 0;
|
|
cut = false;
|
|
foreach (DataRow myRow in vista.Rows)
|
|
{
|
|
if (i < MaxRow - (1 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale))
|
|
myRow["ID"] = 1;
|
|
else
|
|
{
|
|
myRow["ID"] = 2;
|
|
cut = true;
|
|
}
|
|
i++;
|
|
}
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 1");
|
|
}
|
|
else
|
|
cut = false;
|
|
|
|
/********************************* Originale ***********************************************/
|
|
//datitab.table = view.ToTable(false, setTableForTableNoControvalore());
|
|
|
|
//datitab.setY(document.getLastPos());
|
|
//datitab.setX(document.getMargineLeft());
|
|
|
|
////setta posizione tabella
|
|
//document.InsertTable(tab.getTabella(datitab));
|
|
/*********************************************************************************************/
|
|
|
|
/******************************** Modifica Aladdin 14062021 Pino *************************************************/
|
|
DatiTabella datitabRap = new DatiTabella(tabTortaTabella);
|
|
datitab.table = view.ToTable(false, setTableForTableNoControvalore());
|
|
Tabella tabellaDatiRap = new Tabella(document.getMargineLeft(), document.getLastPos());
|
|
tabellaDatiRap.Header = true;
|
|
tabellaDatiRap.Colonne.Add(new Colonna("Descrizione", "Macro asset class", 175, TipoAllineamento.SINISTRA, false, 9, false, TipoColonna.IMMAGINE_E_TESTO));
|
|
tabellaDatiRap.Colonne.Add(new Colonna("Percentuale", "Peso %", 130, TipoAllineamento.DESTRA, false, 9, false));
|
|
|
|
if (DirectBanker == "S")
|
|
tabellaDatiRap.ColoreDirectBankB = "green";
|
|
|
|
|
|
tabellaDatiRap.Draw(datitabRap, document);
|
|
//SIMBOLI
|
|
int nPallino = 1;
|
|
float yPallino = document.getLastPos() + tabellaDatiRap.AltezzaCella;
|
|
float xPallino = document.getMargineLeft();
|
|
//ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
foreach (DataRow drSimbolo in tabellaDatiRap.Datasource.Rows)
|
|
{
|
|
RgbColor color =
|
|
new RgbColor(byte.Parse(drSimbolo["Red"].ToString()), byte.Parse(drSimbolo["Green"].ToString()), byte.Parse(drSimbolo["Blue"].ToString()));
|
|
ceTe.DynamicPDF.PageElements.Circle simbolo =
|
|
new ceTe.DynamicPDF.PageElements.Circle(xPallino, yPallino, 10 / 1.8F, color, color);
|
|
//page.Elements.Add(simbolo);
|
|
document.getCurrentPage().Elements.Add(simbolo);
|
|
yPallino += tabellaDatiRap.AltezzaCella;
|
|
nPallino++;
|
|
}
|
|
/*******************************************************************************************/
|
|
|
|
dim = datitab.GetRowDim() * (datitab.getNumRow() + 1);
|
|
|
|
if (cut)
|
|
{
|
|
document.changePage(389, dim + 20);
|
|
document.nextPage(document.getMargineLeft());
|
|
datitab.setHeader();
|
|
dim = 0;
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 2");
|
|
vista = view.ToTable();
|
|
vista.Columns.Remove(vista.Columns["ID"]);
|
|
_saltopaginaeffettuato = true;
|
|
}
|
|
}
|
|
|
|
// Totale della griglia
|
|
//datitab = new DatiTabella();
|
|
//datitab.table = tabTortaTotali;
|
|
|
|
DataTable _tmpTot = tabTortaTotali; //set.Tables["MacroAssetTotale"];
|
|
_tmpTot.Columns.Remove("Controvalore");
|
|
_tmpTot.Rows[0][0] = "TOTALE";
|
|
|
|
datitab = new DatiTabella();
|
|
datitab.table = _tmpTot;
|
|
|
|
|
|
datitab.setY(document.getLastPos() + dim);
|
|
datitab.setX(document.getMargineLeft());
|
|
//datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitab.setCell(130, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
|
|
float yRect = datitab.getY() + 13;
|
|
float yLineHeader = datitab.getY() + 12;
|
|
|
|
// Barra colorata del footer anche estesa al grafico
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 82, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
default:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRect, 199, 23, 0, new RgbColor(232, 236, 237))); // 358 23
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRect + 23, 199, 10, 0, new RgbColor(255, 255, 255)));
|
|
break;
|
|
}
|
|
|
|
//if (dati.dataTab.Rows.Count == 4)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
//else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
|
|
//if (tabTortaPatrimonioNonRappresentabile != null)
|
|
//{
|
|
// DatiTabella datitabPatrimonioNonRappresentabile = new DatiTabella();
|
|
// datitabPatrimonioNonRappresentabile.table = tabTortaPatrimonioNonRappresentabile;
|
|
// datitabPatrimonioNonRappresentabile.SetRowDim(xrowDim);
|
|
// datitabPatrimonioNonRappresentabile.setY(document.getLastPos() + dim);
|
|
// datitabPatrimonioNonRappresentabile.setX(document.getMargineLeft());
|
|
// datitabPatrimonioNonRappresentabile.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPatrimonioNonRappresentabile.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPatrimonioNonRappresentabile.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabPatrimonioNonRappresentabile));
|
|
// dim += datitabPatrimonioNonRappresentabile.GetRowDim() * datitabPatrimonioNonRappresentabile.getNumRow();
|
|
//}
|
|
|
|
|
|
//if (tabTortaContoCorrenteBancaFideuram != null)
|
|
//{
|
|
// DatiTabella datitabContoCorrenteBancaFideuram = new DatiTabella();
|
|
|
|
// datitabContoCorrenteBancaFideuram.table = tabTortaContoCorrenteBancaFideuram;
|
|
// datitabContoCorrenteBancaFideuram.SetRowDim(xrowDim);
|
|
// datitabContoCorrenteBancaFideuram.setY(document.getLastPos() + dim);
|
|
// datitabContoCorrenteBancaFideuram.setX(document.getMargineLeft());
|
|
// datitabContoCorrenteBancaFideuram.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabContoCorrenteBancaFideuram.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabContoCorrenteBancaFideuram.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabContoCorrenteBancaFideuram));
|
|
// dim += datitabContoCorrenteBancaFideuram.GetRowDim() * datitabContoCorrenteBancaFideuram.getNumRow();
|
|
//}
|
|
|
|
//if (tabTortaLineaSelf != null)
|
|
//{
|
|
// DatiTabella datitabLineaSelf = new DatiTabella();
|
|
// datitabLineaSelf.table = tabTortaLineaSelf;
|
|
// datitabLineaSelf.SetRowDim(xrowDim);
|
|
// datitabLineaSelf.setY(document.getLastPos() + dim);
|
|
// datitabLineaSelf.setX(document.getMargineLeft());
|
|
// datitabLineaSelf.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabLineaSelf.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabLineaSelf.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabLineaSelf));
|
|
// dim += datitabLineaSelf.GetRowDim() * datitabLineaSelf.getNumRow();
|
|
//}
|
|
|
|
|
|
//if (tabTortaPartiteViaggianti != null)
|
|
//{
|
|
// DatiTabella datitabPartiteViaggianti = new DatiTabella();
|
|
// datitabPartiteViaggianti.table = tabTortaPartiteViaggianti;
|
|
|
|
// datitabPartiteViaggianti.setY(document.getLastPos() + dim);
|
|
// datitabPartiteViaggianti.setX(document.getMargineLeft());
|
|
// datitabPartiteViaggianti.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPartiteViaggianti.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPartiteViaggianti.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabPartiteViaggianti));
|
|
// dim += datitabPartiteViaggianti.GetRowDim() * datitabPartiteViaggianti.getNumRow();
|
|
//}
|
|
|
|
//if (tabTotale != null)
|
|
//{
|
|
// DatiTabella datitabContoTotale = new DatiTabella();
|
|
// tabTotale.Columns.Add();
|
|
// datitabContoTotale.table = tabTotale;
|
|
|
|
// datitabContoTotale.setY(document.getLastPos() + dim);
|
|
// datitabContoTotale.setX(document.getMargineLeft());
|
|
// datitabContoTotale.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
// datitabContoTotale.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
// datitabContoTotale.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabContoTotale));
|
|
// dim += datitabContoTotale.GetRowDim() * datitabContoTotale.getNumRow();
|
|
//}
|
|
|
|
// Scrittura del footer sul grafico
|
|
FormatNum format = new FormatNum();
|
|
ArrayList Labels = format.CreateCustomPerc148(dati.getValMax(), dati.getValMin());
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 91, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 115, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 135, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
default:
|
|
//float passo = 40.0F;
|
|
float passo = 45.0F;
|
|
//float passo = 50.0F;
|
|
for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
if (i == 0)
|
|
{
|
|
if (dati.getValMin() < 0)
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 280F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
}
|
|
else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
break;
|
|
}
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
}
|
|
|
|
protected void writeSezione163(DataThread datathread)
|
|
{
|
|
int MaxRow;
|
|
bool cut = true;
|
|
DataTable vista;
|
|
Tabella tab = new Tabella();
|
|
|
|
datitab.table = tabTortaTabella;
|
|
|
|
vista = datitab.table;
|
|
|
|
if (document == null)
|
|
document = datathread.DocumentPDF;
|
|
|
|
datitab.setY(document.getLastPos());
|
|
datitab.setIsRet();
|
|
datitab.setIsLinee(1);
|
|
datitab.setHeader();
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCellSpace(0);
|
|
|
|
|
|
int rTotTortaPatrimonioNonRappresentabile = 0;
|
|
int rTotTortaContoCorrenteBancaFideuram = 0;
|
|
int rTotTortaLineaSelf = 0;
|
|
int rTotTotale = 0;
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
rTotTortaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
rTotTortaContoCorrenteBancaFideuram = tabTortaContoCorrenteBancaFideuram.Rows.Count;
|
|
|
|
if (tabTortaLineaSelf != null)
|
|
rTotTortaLineaSelf = tabTortaLineaSelf.Rows.Count;
|
|
|
|
|
|
|
|
if (tabTotale != null)
|
|
rTotTotale = tabTotale.Rows.Count;
|
|
|
|
//eventuali operazioni sul dataset
|
|
//calcola se entra nella pagina altrimenti aggiunge una nuova pagina.
|
|
float altezzaNotaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile == null ? 0 : tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
altezzaNotaPatrimonioNonRappresentabile = altezzaNotaPatrimonioNonRappresentabile * 30;
|
|
|
|
|
|
//V if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile))
|
|
//Aggiunto 30 per non far sforare la S10
|
|
if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile + 30))
|
|
document.addPage();
|
|
|
|
|
|
//if (_noIndicizzato)
|
|
// document.setTitolo("SOSTITUIRE_TITOLO");
|
|
//else
|
|
|
|
if (_noIndicizzato)
|
|
document.setTitolo(datathread.SezioneReport.Titolo);
|
|
else
|
|
{
|
|
// Inizio: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
if ((datathread.TipoReport.ToUpper() == "DIAGNOSI") && ((datathread.SezioneReport.Codice == "S153") || (datathread.SezioneReport.Codice == "S154") || (datathread.SezioneReport.Codice == "S163")))
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest"), 0, 520, 8);
|
|
|
|
}
|
|
// Fine: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
else if (datathread.TipoReport.ToUpper() == "DIAGNOSI")
|
|
{
|
|
document.setSezTitoloDiagnosi(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(Header);
|
|
}
|
|
else
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
|
|
/*************** modifica Aladdin 14062021 - Pino ******************************************/
|
|
datathread.SezioneReport.TestoIntroduttivo = "In questa scheda è riportata la classificazione, sulla base delle principali macro asset class finanziarie, del patrimonio che lei detiene presso /$Banca$/, con evidenza dell'esposizione, in termini percentuali, a ciascuna macro asset class.";
|
|
/*******************************************************************************************/
|
|
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest,"), 0, 520, 8);
|
|
}
|
|
|
|
}
|
|
|
|
//document.setHeaderSpace(10);
|
|
|
|
#region Nuova tabella
|
|
//DatiTabella datitab1 = new DatiTabella();
|
|
//datitab1.table = tabTortaTotali;
|
|
decimal GradoCopertura = 100;
|
|
if (datathread.Patrimonioterzictv != 0)
|
|
GradoCopertura = (datathread.Patrimonioterzictv - datathread.PatrimonioNonRappresentabileAI) / (datathread.Patrimonioterzictv) * 100;
|
|
decimal PatrimonioTerziNonRapp = datathread.PatrimonioNonRappresentabileAI;
|
|
decimal PatrimonioTerzi = datathread.Patrimonioterzictv;
|
|
|
|
DataTable _tmpTotPF = tabTortaTotali.Copy(); //set.Tables["MacroAssetTotale"];
|
|
_tmpTotPF.Columns.Remove("Percentuale");
|
|
if (PatrimonioTerzi < 0 || (GradoCopertura >= 0 && GradoCopertura < 100))
|
|
_tmpTotPF.Rows[0][0] = "Patrimonio altri Istituti (€)*";
|
|
else
|
|
_tmpTotPF.Rows[0][0] = "Patrimonio altri Istituti (€)";
|
|
|
|
DatiTabella datitabPF = new DatiTabella();
|
|
datitabPF.table = _tmpTotPF;
|
|
|
|
|
|
datitabPF.setY(document.getLastPos() + 10);
|
|
datitabPF.setX(document.getMargineLeft());
|
|
datitabPF.setCell(155, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitabPF.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabPF.setCell(130, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabPF));
|
|
#endregion
|
|
|
|
document.setHeaderSpace(50);
|
|
|
|
#region Grafico
|
|
// Grafico
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(datitab.table);
|
|
view.RowFilter = "";
|
|
dati.dataTab = view.ToTable(false, this.setTableForIsto());
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 1:
|
|
dati.setHeight(ChartHeigth - 69);
|
|
break;
|
|
case 2:
|
|
dati.setHeight(ChartHeigth - 43);
|
|
break;
|
|
|
|
case 3:
|
|
dati.setHeight(ChartHeigth - 25);
|
|
break;
|
|
case 4:
|
|
dati.setHeight(ChartHeigth);
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
break;
|
|
case 5:
|
|
dati.setHeight(ChartHeigth + 24);
|
|
break;
|
|
case 6:
|
|
dati.setHeight(ChartHeigth + 43);
|
|
break;
|
|
case 7:
|
|
dati.setHeight(ChartHeigth + 72); //63
|
|
break;
|
|
default:
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow()+2.5)));
|
|
dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + (datitab.GetRowDim() * (datitab.getNumRow() + 1)) + datitab.GetRowDim() + 10);
|
|
break;
|
|
}
|
|
|
|
dati.setWidth(200);
|
|
Istogramma isto = new Istogramma();
|
|
//document.InsertGrafico(isto.getGrafico(dati), 360, document.getLastPos() - 11);
|
|
document.InsertGrafico(isto.getGrafico(dati), 349, document.getLastPos() - 12); /// Buona
|
|
#endregion
|
|
|
|
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
var xrowDim = datitab.GetRowDim();
|
|
|
|
if (tabTortaTabella.Rows.Count == 18 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
{
|
|
xrowDim--;
|
|
|
|
}
|
|
datitab.SetRowDim(xrowDim);
|
|
|
|
while (cut)
|
|
{
|
|
if (vista.Rows.Count != 0 && document.checkMargin(datitab.GetRowDim() * (vista.Rows.Count + 2 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale) + dim))
|
|
{
|
|
MaxRow = document.getWritableRow(23, false); //23
|
|
|
|
//if (tabTortaTabella.Rows.Count > 17 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
// MaxRow = document.getWritableRow(19, false);
|
|
|
|
// ulteriore controllo per evitare che la nota sfori sul footer. Questa gestione è da rifare totalmente.
|
|
if (document.checkMargin((MaxRow + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale + altezzaNotaPatrimonioNonRappresentabile) * 23))
|
|
MaxRow -= 1;
|
|
|
|
vista.Columns.Add("ID");
|
|
int i = 0;
|
|
cut = false;
|
|
foreach (DataRow myRow in vista.Rows)
|
|
{
|
|
if (i < MaxRow - (1 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale))
|
|
myRow["ID"] = 1;
|
|
else
|
|
{
|
|
myRow["ID"] = 2;
|
|
cut = true;
|
|
}
|
|
i++;
|
|
}
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 1");
|
|
}
|
|
else
|
|
cut = false;
|
|
|
|
/********************************* Originale ***********************************************/
|
|
//datitab.table = view.ToTable(false, setTableForTableNoControvalore());
|
|
|
|
//datitab.setY(document.getLastPos());
|
|
//datitab.setX(document.getMargineLeft());
|
|
|
|
////setta posizione tabella
|
|
//document.InsertTable(tab.getTabella(datitab));
|
|
/*********************************************************************************************/
|
|
|
|
/******************************** Modifica Aladdin 14062021 Pino *************************************************/
|
|
DatiTabella datitabRap = new DatiTabella(tabTortaTabella);
|
|
datitab.table = view.ToTable(false, setTableForTableNoControvalore());
|
|
Tabella tabellaDatiRap = new Tabella(document.getMargineLeft(), document.getLastPos());
|
|
tabellaDatiRap.Header = true;
|
|
tabellaDatiRap.Colonne.Add(new Colonna("Descrizione", "Macro asset class", 175, TipoAllineamento.SINISTRA, false, 9, false, TipoColonna.IMMAGINE_E_TESTO));
|
|
tabellaDatiRap.Colonne.Add(new Colonna("Percentuale", "Peso %", 130, TipoAllineamento.DESTRA, false, 9, false));
|
|
tabellaDatiRap.Draw(datitabRap, document);
|
|
//SIMBOLI
|
|
int nPallino = 1;
|
|
float yPallino = document.getLastPos() + tabellaDatiRap.AltezzaCella;
|
|
float xPallino = document.getMargineLeft();
|
|
//ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
foreach (DataRow drSimbolo in tabellaDatiRap.Datasource.Rows)
|
|
{
|
|
RgbColor color =
|
|
new RgbColor(byte.Parse(drSimbolo["Red"].ToString()), byte.Parse(drSimbolo["Green"].ToString()), byte.Parse(drSimbolo["Blue"].ToString()));
|
|
ceTe.DynamicPDF.PageElements.Circle simbolo =
|
|
new ceTe.DynamicPDF.PageElements.Circle(xPallino, yPallino, 10 / 1.8F, color, color);
|
|
//page.Elements.Add(simbolo);
|
|
document.getCurrentPage().Elements.Add(simbolo);
|
|
yPallino += tabellaDatiRap.AltezzaCella;
|
|
nPallino++;
|
|
}
|
|
/*******************************************************************************************/
|
|
|
|
dim = datitab.GetRowDim() * (datitab.getNumRow() + 1);
|
|
|
|
if (cut)
|
|
{
|
|
document.changePage(389, dim + 20);
|
|
document.nextPage(document.getMargineLeft());
|
|
datitab.setHeader();
|
|
dim = 0;
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 2");
|
|
vista = view.ToTable();
|
|
vista.Columns.Remove(vista.Columns["ID"]);
|
|
_saltopaginaeffettuato = true;
|
|
}
|
|
}
|
|
|
|
// Totale della griglia
|
|
//datitab = new DatiTabella();
|
|
//datitab.table = tabTortaTotali;
|
|
|
|
DataTable _tmpTot = tabTortaTotali; //set.Tables["MacroAssetTotale"];
|
|
_tmpTot.Columns.Remove("Controvalore");
|
|
_tmpTot.Rows[0][0] = "TOTALE";
|
|
|
|
datitab = new DatiTabella();
|
|
datitab.table = _tmpTot;
|
|
|
|
|
|
datitab.setY(document.getLastPos() + dim);
|
|
datitab.setX(document.getMargineLeft());
|
|
//datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitab.setCell(130, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
|
|
float yRect = datitab.getY() + 13;
|
|
float yLineHeader = datitab.getY() + 12;
|
|
|
|
// Barra colorata del footer anche estesa al grafico
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 82, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
default:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRect, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
}
|
|
|
|
//if (dati.dataTab.Rows.Count == 4)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
//else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
|
|
//if (tabTortaPatrimonioNonRappresentabile != null)
|
|
//{
|
|
// DatiTabella datitabPatrimonioNonRappresentabile = new DatiTabella();
|
|
// datitabPatrimonioNonRappresentabile.table = tabTortaPatrimonioNonRappresentabile;
|
|
// datitabPatrimonioNonRappresentabile.SetRowDim(xrowDim);
|
|
// datitabPatrimonioNonRappresentabile.setY(document.getLastPos() + dim);
|
|
// datitabPatrimonioNonRappresentabile.setX(document.getMargineLeft());
|
|
// datitabPatrimonioNonRappresentabile.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPatrimonioNonRappresentabile.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPatrimonioNonRappresentabile.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabPatrimonioNonRappresentabile));
|
|
// dim += datitabPatrimonioNonRappresentabile.GetRowDim() * datitabPatrimonioNonRappresentabile.getNumRow();
|
|
//}
|
|
|
|
|
|
//if (tabTortaContoCorrenteBancaFideuram != null)
|
|
//{
|
|
// DatiTabella datitabContoCorrenteBancaFideuram = new DatiTabella();
|
|
|
|
// datitabContoCorrenteBancaFideuram.table = tabTortaContoCorrenteBancaFideuram;
|
|
// datitabContoCorrenteBancaFideuram.SetRowDim(xrowDim);
|
|
// datitabContoCorrenteBancaFideuram.setY(document.getLastPos() + dim);
|
|
// datitabContoCorrenteBancaFideuram.setX(document.getMargineLeft());
|
|
// datitabContoCorrenteBancaFideuram.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabContoCorrenteBancaFideuram.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabContoCorrenteBancaFideuram.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabContoCorrenteBancaFideuram));
|
|
// dim += datitabContoCorrenteBancaFideuram.GetRowDim() * datitabContoCorrenteBancaFideuram.getNumRow();
|
|
//}
|
|
|
|
//if (tabTortaLineaSelf != null)
|
|
//{
|
|
// DatiTabella datitabLineaSelf = new DatiTabella();
|
|
// datitabLineaSelf.table = tabTortaLineaSelf;
|
|
// datitabLineaSelf.SetRowDim(xrowDim);
|
|
// datitabLineaSelf.setY(document.getLastPos() + dim);
|
|
// datitabLineaSelf.setX(document.getMargineLeft());
|
|
// datitabLineaSelf.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabLineaSelf.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabLineaSelf.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabLineaSelf));
|
|
// dim += datitabLineaSelf.GetRowDim() * datitabLineaSelf.getNumRow();
|
|
//}
|
|
|
|
|
|
//if (tabTortaPartiteViaggianti != null)
|
|
//{
|
|
// DatiTabella datitabPartiteViaggianti = new DatiTabella();
|
|
// datitabPartiteViaggianti.table = tabTortaPartiteViaggianti;
|
|
|
|
// datitabPartiteViaggianti.setY(document.getLastPos() + dim);
|
|
// datitabPartiteViaggianti.setX(document.getMargineLeft());
|
|
// datitabPartiteViaggianti.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPartiteViaggianti.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPartiteViaggianti.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabPartiteViaggianti));
|
|
// dim += datitabPartiteViaggianti.GetRowDim() * datitabPartiteViaggianti.getNumRow();
|
|
//}
|
|
|
|
//if (tabTotale != null)
|
|
//{
|
|
// DatiTabella datitabContoTotale = new DatiTabella();
|
|
// tabTotale.Columns.Add();
|
|
// datitabContoTotale.table = tabTotale;
|
|
|
|
// datitabContoTotale.setY(document.getLastPos() + dim);
|
|
// datitabContoTotale.setX(document.getMargineLeft());
|
|
// datitabContoTotale.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
// datitabContoTotale.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
// datitabContoTotale.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabContoTotale));
|
|
// dim += datitabContoTotale.GetRowDim() * datitabContoTotale.getNumRow();
|
|
//}
|
|
|
|
// Scrittura del footer sul grafico
|
|
FormatNum format = new FormatNum();
|
|
ArrayList Labels = format.CreateCustomPerc148(dati.getValMax(), dati.getValMin());
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 91, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 115, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 135, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
default:
|
|
//float passo = 40.0F;
|
|
//for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
// if (i == 0)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 265F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
// else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
|
|
//float passo = 40.0F;
|
|
float passo = 45.0F;
|
|
//float passo = 50.0F;
|
|
for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
if (i == 0)
|
|
{
|
|
if (dati.getValMin() < 0)
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 280F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
}
|
|
else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
}
|
|
|
|
protected void writeSezione154(DataThread datathread)
|
|
{
|
|
int MaxRow;
|
|
bool cut = true;
|
|
DataTable vista;
|
|
Tabella tab = new Tabella();
|
|
|
|
datitab.table = tabTortaTabella;
|
|
|
|
vista = datitab.table;
|
|
|
|
if (document == null)
|
|
document = datathread.DocumentPDF;
|
|
|
|
datitab.setY(document.getLastPos());
|
|
datitab.setIsRet();
|
|
datitab.setIsLinee(1);
|
|
datitab.setHeader();
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
datitab.setCellSpace(0);
|
|
|
|
|
|
int rTotTortaPatrimonioNonRappresentabile = 0;
|
|
int rTotTortaContoCorrenteBancaFideuram = 0;
|
|
int rTotTortaLineaSelf = 0;
|
|
int rTotTotale = 0;
|
|
|
|
if (tabTortaPatrimonioNonRappresentabile != null)
|
|
rTotTortaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
|
|
if (tabTortaContoCorrenteBancaFideuram != null)
|
|
rTotTortaContoCorrenteBancaFideuram = tabTortaContoCorrenteBancaFideuram.Rows.Count;
|
|
|
|
if (tabTortaLineaSelf != null)
|
|
rTotTortaLineaSelf = tabTortaLineaSelf.Rows.Count;
|
|
|
|
|
|
|
|
if (tabTotale != null)
|
|
rTotTotale = tabTotale.Rows.Count;
|
|
|
|
//eventuali operazioni sul dataset
|
|
//calcola se entra nella pagina altrimenti aggiunge una nuova pagina.
|
|
float altezzaNotaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile == null ? 0 : tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
altezzaNotaPatrimonioNonRappresentabile = altezzaNotaPatrimonioNonRappresentabile * 30;
|
|
|
|
|
|
//V if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile))
|
|
//Aggiunto 30 per non far sforare la S10
|
|
if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile + 30))
|
|
document.addPage();
|
|
|
|
|
|
//if (_noIndicizzato)
|
|
// document.setTitolo("SOSTITUIRE_TITOLO");
|
|
//else
|
|
|
|
if (_noIndicizzato)
|
|
document.setTitolo(datathread.SezioneReport.Titolo);
|
|
else
|
|
{
|
|
// Inizio: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
if ((datathread.TipoReport.ToUpper() == "DIAGNOSI") && ((datathread.SezioneReport.Codice == "S153") || (datathread.SezioneReport.Codice == "S154") || (datathread.SezioneReport.Codice == "S163")))
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest"), 0, 520, 8);
|
|
|
|
}
|
|
// Fine: aggiunto per via del font = 8 sul nuovo report di Diagnosi
|
|
else if (datathread.TipoReport.ToUpper() == "DIAGNOSI")
|
|
{
|
|
document.setSezTitoloDiagnosi(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(Header);
|
|
}
|
|
else
|
|
{
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
|
|
/*************** modifica Aladdin 14062021 - Pino ******************************************/
|
|
datathread.SezioneReport.TestoIntroduttivo = "In questa scheda è riportata la classificazione, sulla base delle principali macro asset class finanziarie, del patrimonio che lei detiene presso /$Banca$/, con evidenza dell'esposizione, in termini percentuali, a ciascuna macro asset class.";
|
|
/*******************************************************************************************/
|
|
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest"), 0, 520, 8);
|
|
}
|
|
|
|
}
|
|
|
|
//document.setHeaderSpace(10);
|
|
|
|
#region Nuova tabella
|
|
//DatiTabella datitab1 = new DatiTabella();
|
|
//datitab1.table = tabTortaTotali;
|
|
decimal totalSelfNegGP = datathread.Periodico ? datathread.GetSelfNegativeValue("XY") : 0;
|
|
decimal totaleSelfNegFO = datathread.Periodico ? datathread.GetSelfNegativeValue("FO") : 0;
|
|
decimal totalNegativeCurrentAccountValue = datathread.Periodico ? datathread.TotalNegativeCurrentAccountValue : 0;
|
|
decimal GPEligoFondi = datathread.GPEligoFondi;
|
|
decimal GPEligoTitoli = datathread.GPEligoTitoli;
|
|
decimal ProdottiNonRapp = datathread.PatrimonioNonRappresentabileCompl;
|
|
decimal PartiteViaggianti = datathread.PartiteViaggiantiInvestimento + datathread.PartiteViaggiantiDisinvestimento;
|
|
// decimal GradoCopertura = datathread.CoperturaTotaleRisorseFinanziarie;
|
|
decimal PatrBancaSez = datathread.PatrimonioBancaFideuramCtvAlNettoContoCorrente + datathread.Patrimonioterzictv - datathread.PartiteViaggiantiInvestimento - datathread.PartiteViaggiantiDisinvestimento - datathread.PatrimonioNonRappresentabileCompl;
|
|
decimal GradoCopertura = PatrBancaSez / (datathread.PatrimonioBancaFideuramCtvAlNettoContoCorrente + datathread.Patrimonioterzictv) * 100;
|
|
decimal PatrimonioTerzi = datathread.Patrimonioterzictv;
|
|
|
|
DataTable _tmpTotPF = tabTortaTotali.Copy(); //set.Tables["MacroAssetTotale"];
|
|
_tmpTotPF.Columns.Remove("Percentuale");
|
|
if (totalNegativeCurrentAccountValue != 0 || totaleSelfNegFO != 0 || GPEligoFondi < 0 || GPEligoTitoli < 0 || (GradoCopertura >= 0 && GradoCopertura < 100))
|
|
_tmpTotPF.Rows[0][0] = "Patrimonio Finanziario Complessivo (€)*";
|
|
else
|
|
_tmpTotPF.Rows[0][0] = "Patrimonio Finanziario Complessivo (€)";
|
|
|
|
DatiTabella datitabPF = new DatiTabella();
|
|
datitabPF.table = _tmpTotPF;
|
|
|
|
|
|
datitabPF.setY(document.getLastPos() + 10);
|
|
datitabPF.setX(document.getMargineLeft());
|
|
datitabPF.setCell(230, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitabPF.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitabPF.setCell(100, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, false);
|
|
|
|
document.InsertTable(tab.getTabella(datitabPF));
|
|
#endregion
|
|
|
|
// document.setHeaderSpace(50);
|
|
document.setHeaderSpace(40);
|
|
|
|
#region Grafico
|
|
// Grafico
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(datitab.table);
|
|
view.RowFilter = "";
|
|
dati.dataTab = view.ToTable(false, this.setTableForIsto());
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
dati.setHeight(ChartHeigth - 25);
|
|
break;
|
|
case 4:
|
|
dati.setHeight(ChartHeigth);
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
break;
|
|
case 5:
|
|
dati.setHeight(ChartHeigth + 24);
|
|
break;
|
|
case 6:
|
|
dati.setHeight(ChartHeigth + 48);
|
|
break;
|
|
case 7:
|
|
dati.setHeight(ChartHeigth + 72); //62
|
|
break;
|
|
default:
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow()+2.5)));
|
|
dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + (datitab.GetRowDim() * datitab.getNumRow()) + datitab.GetRowDim() + 10);
|
|
break;
|
|
}
|
|
|
|
dati.setWidth(200);
|
|
Istogramma isto = new Istogramma();
|
|
//document.InsertGrafico(isto.getGrafico(dati), 360, document.getLastPos() - 11);
|
|
document.InsertGrafico(isto.getGrafico(dati), 349, document.getLastPos() - 12); /// Buona
|
|
#endregion
|
|
|
|
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
var xrowDim = datitab.GetRowDim();
|
|
|
|
if (tabTortaTabella.Rows.Count == 18 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
{
|
|
xrowDim--;
|
|
|
|
}
|
|
datitab.SetRowDim(xrowDim);
|
|
|
|
while (cut)
|
|
{
|
|
if (vista.Rows.Count != 0 && document.checkMargin(datitab.GetRowDim() * (vista.Rows.Count + 2 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale) + dim))
|
|
{
|
|
MaxRow = document.getWritableRow(23, false); //23
|
|
|
|
//if (tabTortaTabella.Rows.Count > 17 && tabTortaPatrimonioNonRappresentabile.Rows.Count + tabTortaContoCorrenteBancaFideuram.Rows.Count >= 1)
|
|
// MaxRow = document.getWritableRow(19, false);
|
|
|
|
// ulteriore controllo per evitare che la nota sfori sul footer. Questa gestione è da rifare totalmente.
|
|
if (document.checkMargin((MaxRow + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale + altezzaNotaPatrimonioNonRappresentabile) * 23))
|
|
MaxRow -= 1;
|
|
|
|
vista.Columns.Add("ID");
|
|
int i = 0;
|
|
cut = false;
|
|
foreach (DataRow myRow in vista.Rows)
|
|
{
|
|
if (i < MaxRow - (1 + rTotTortaPatrimonioNonRappresentabile + rTotTortaContoCorrenteBancaFideuram + rTotTortaLineaSelf + rTotTotale))
|
|
myRow["ID"] = 1;
|
|
else
|
|
{
|
|
myRow["ID"] = 2;
|
|
cut = true;
|
|
}
|
|
i++;
|
|
}
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 1");
|
|
}
|
|
else
|
|
cut = false;
|
|
|
|
/********************************* Originale ***********************************************/
|
|
//datitab.table = view.ToTable(false, setTableForTableNoControvalore());
|
|
|
|
//datitab.setY(document.getLastPos());
|
|
//datitab.setX(document.getMargineLeft());
|
|
|
|
////setta posizione tabella
|
|
//document.InsertTable(tab.getTabella(datitab));
|
|
/*********************************************************************************************/
|
|
|
|
/******************************** Modifica Aladdin 14062021 Pino *************************************************/
|
|
DatiTabella datitabRap = new DatiTabella(tabTortaTabella);
|
|
datitab.table = view.ToTable(false, setTableForTableNoControvalore());
|
|
Tabella tabellaDatiRap = new Tabella(document.getMargineLeft(), document.getLastPos());
|
|
tabellaDatiRap.Header = true;
|
|
tabellaDatiRap.Colonne.Add(new Colonna("Descrizione", "Macro asset class", 175, TipoAllineamento.SINISTRA, false, 9, false, TipoColonna.IMMAGINE_E_TESTO));
|
|
tabellaDatiRap.Colonne.Add(new Colonna("Percentuale", "Peso %", 130, TipoAllineamento.DESTRA, false, 9, false));
|
|
tabellaDatiRap.Draw(datitabRap, document);
|
|
//SIMBOLI
|
|
int nPallino = 1;
|
|
float yPallino = document.getLastPos() + tabellaDatiRap.AltezzaCella;
|
|
float xPallino = document.getMargineLeft();
|
|
//ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
foreach (DataRow drSimbolo in tabellaDatiRap.Datasource.Rows)
|
|
{
|
|
RgbColor color =
|
|
new RgbColor(byte.Parse(drSimbolo["Red"].ToString()), byte.Parse(drSimbolo["Green"].ToString()), byte.Parse(drSimbolo["Blue"].ToString()));
|
|
ceTe.DynamicPDF.PageElements.Circle simbolo =
|
|
new ceTe.DynamicPDF.PageElements.Circle(xPallino, yPallino, 10 / 1.8F, color, color);
|
|
//page.Elements.Add(simbolo);
|
|
document.getCurrentPage().Elements.Add(simbolo);
|
|
yPallino += tabellaDatiRap.AltezzaCella;
|
|
nPallino++;
|
|
}
|
|
/*******************************************************************************************/
|
|
|
|
dim = datitab.GetRowDim() * (datitab.getNumRow() + 1);
|
|
|
|
if (cut)
|
|
{
|
|
document.changePage(389, dim + 20);
|
|
document.nextPage(document.getMargineLeft());
|
|
datitab.setHeader();
|
|
dim = 0;
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 2");
|
|
vista = view.ToTable();
|
|
vista.Columns.Remove(vista.Columns["ID"]);
|
|
_saltopaginaeffettuato = true;
|
|
}
|
|
}
|
|
|
|
// Totale della griglia
|
|
//datitab = new DatiTabella();
|
|
//datitab.table = tabTortaTotali;
|
|
|
|
DataTable _tmpTot = tabTortaTotali; //set.Tables["MacroAssetTotale"];
|
|
_tmpTot.Columns.Remove("Controvalore");
|
|
_tmpTot.Rows[0][0] = "TOTALE";
|
|
|
|
datitab = new DatiTabella();
|
|
datitab.table = _tmpTot;
|
|
|
|
|
|
datitab.setY(document.getLastPos() + dim);
|
|
datitab.setX(document.getMargineLeft());
|
|
//datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
//datitab.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
datitab.setCell(130, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
|
|
float yRect = datitab.getY() + 13;
|
|
float yLineHeader = datitab.getY() + 12;
|
|
|
|
// Barra colorata del footer anche estesa al grafico
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 82, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
default:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRect, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
break;
|
|
}
|
|
|
|
//if (dati.dataTab.Rows.Count == 4)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 105, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
//else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, document.getLastPos() + 128, 199, 23, 0, new RgbColor(232, 236, 237)));
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
|
|
//if (tabTortaPatrimonioNonRappresentabile != null)
|
|
//{
|
|
// DatiTabella datitabPatrimonioNonRappresentabile = new DatiTabella();
|
|
// datitabPatrimonioNonRappresentabile.table = tabTortaPatrimonioNonRappresentabile;
|
|
// datitabPatrimonioNonRappresentabile.SetRowDim(xrowDim);
|
|
// datitabPatrimonioNonRappresentabile.setY(document.getLastPos() + dim);
|
|
// datitabPatrimonioNonRappresentabile.setX(document.getMargineLeft());
|
|
// datitabPatrimonioNonRappresentabile.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPatrimonioNonRappresentabile.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPatrimonioNonRappresentabile.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabPatrimonioNonRappresentabile));
|
|
// dim += datitabPatrimonioNonRappresentabile.GetRowDim() * datitabPatrimonioNonRappresentabile.getNumRow();
|
|
//}
|
|
|
|
|
|
//if (tabTortaContoCorrenteBancaFideuram != null)
|
|
//{
|
|
// DatiTabella datitabContoCorrenteBancaFideuram = new DatiTabella();
|
|
|
|
// datitabContoCorrenteBancaFideuram.table = tabTortaContoCorrenteBancaFideuram;
|
|
// datitabContoCorrenteBancaFideuram.SetRowDim(xrowDim);
|
|
// datitabContoCorrenteBancaFideuram.setY(document.getLastPos() + dim);
|
|
// datitabContoCorrenteBancaFideuram.setX(document.getMargineLeft());
|
|
// datitabContoCorrenteBancaFideuram.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabContoCorrenteBancaFideuram.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabContoCorrenteBancaFideuram.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabContoCorrenteBancaFideuram));
|
|
// dim += datitabContoCorrenteBancaFideuram.GetRowDim() * datitabContoCorrenteBancaFideuram.getNumRow();
|
|
//}
|
|
|
|
//if (tabTortaLineaSelf != null)
|
|
//{
|
|
// DatiTabella datitabLineaSelf = new DatiTabella();
|
|
// datitabLineaSelf.table = tabTortaLineaSelf;
|
|
// datitabLineaSelf.SetRowDim(xrowDim);
|
|
// datitabLineaSelf.setY(document.getLastPos() + dim);
|
|
// datitabLineaSelf.setX(document.getMargineLeft());
|
|
// datitabLineaSelf.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabLineaSelf.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabLineaSelf.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabLineaSelf));
|
|
// dim += datitabLineaSelf.GetRowDim() * datitabLineaSelf.getNumRow();
|
|
//}
|
|
|
|
|
|
//if (tabTortaPartiteViaggianti != null)
|
|
//{
|
|
// DatiTabella datitabPartiteViaggianti = new DatiTabella();
|
|
// datitabPartiteViaggianti.table = tabTortaPartiteViaggianti;
|
|
|
|
// datitabPartiteViaggianti.setY(document.getLastPos() + dim);
|
|
// datitabPartiteViaggianti.setX(document.getMargineLeft());
|
|
// datitabPartiteViaggianti.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPartiteViaggianti.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
// datitabPartiteViaggianti.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdana, false);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabPartiteViaggianti));
|
|
// dim += datitabPartiteViaggianti.GetRowDim() * datitabPartiteViaggianti.getNumRow();
|
|
//}
|
|
|
|
//if (tabTotale != null)
|
|
//{
|
|
// DatiTabella datitabContoTotale = new DatiTabella();
|
|
// tabTotale.Columns.Add();
|
|
// datitabContoTotale.table = tabTotale;
|
|
|
|
// datitabContoTotale.setY(document.getLastPos() + dim);
|
|
// datitabContoTotale.setX(document.getMargineLeft());
|
|
// datitabContoTotale.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, true);
|
|
// datitabContoTotale.setCell(90, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
// datitabContoTotale.setCell(40, ceTe.DynamicPDF.TextAlign.Right, Globals.OpenTypeFontVerdanaB, true);
|
|
|
|
// document.InsertTable(tab.getTabella(datitabContoTotale));
|
|
// dim += datitabContoTotale.GetRowDim() * datitabContoTotale.getNumRow();
|
|
//}
|
|
|
|
// Scrittura del footer sul grafico
|
|
FormatNum format = new FormatNum();
|
|
ArrayList Labels = format.CreateCustomPerc148(dati.getValMax(), dati.getValMin());
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 91, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
break;
|
|
case 4:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 115, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
case 5:
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 135, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
case 6:
|
|
float passo = 40.0F;
|
|
for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
if (i == 0)
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 280F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
case 7:
|
|
passo = 40.0F;
|
|
for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
if (i == 0)
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 280F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
break;
|
|
default:
|
|
passo = 40.0F;
|
|
for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
if (i == 0)
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 265F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
break;
|
|
}
|
|
|
|
dim += datitab.GetRowDim() * datitab.getNumRow();
|
|
}
|
|
|
|
/******* ESG - Per la sezione S181 seconda tabella Pino *********/
|
|
protected void writeSezione181(DataThread datathread)
|
|
{
|
|
int MaxRow;
|
|
bool cut = true;
|
|
DataTable vista;
|
|
Tabella tab = new Tabella();
|
|
|
|
datitab.table = tabCaratteristiche;
|
|
|
|
//vista = datitab.table;
|
|
|
|
if (document == null)
|
|
document = datathread.DocumentPDF;
|
|
|
|
#region Grafico
|
|
// Grafico
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(datitab.table);
|
|
view.RowFilter = "";
|
|
dati.dataTab = view.ToTable(false, this.setTableForIstoESG());
|
|
|
|
// serve per dimensionare la posizione in altezza delle barre del grafico
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
dati.setHeight(ChartHeigth - 25);
|
|
break;
|
|
case 4:
|
|
dati.setHeight(ChartHeigth);
|
|
//dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
break;
|
|
case 5:
|
|
dati.setHeight(ChartHeigth + 24);
|
|
break;
|
|
case 6:
|
|
dati.setHeight(ChartHeigth + 49);
|
|
break;
|
|
default:
|
|
dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + ((datitab.GetRowDim() * datitab.getNumRow()) + datitab.GetRowDim() + 10));
|
|
break;
|
|
}
|
|
|
|
// Serve per dimensionare l'ampiezza del grafico
|
|
dati.setWidth(400);
|
|
dati.ActLabelSeries();
|
|
Istogramma isto = new Istogramma();
|
|
|
|
//IstoFarfallaS133BIS isto = new IstoFarfallaS133BIS(750, 85);
|
|
document.InsertGrafico(isto.getGraficoCaratteristicheESG(dati), 128, document.getLastPos() + 22); /// Buona
|
|
#endregion
|
|
}
|
|
/****************************************************************/
|
|
|
|
/***** FD - Per la sezione FD200 29/05/2023 - Pino *****/
|
|
protected void writeSezione200(DataThread datathread)
|
|
{
|
|
int MaxRow;
|
|
bool cut = true;
|
|
DataTable vista;
|
|
Tabella tab = new Tabella();
|
|
float MargineTop;
|
|
|
|
datitab.table = tabMacroAssetClass;
|
|
|
|
vista = datitab.table;
|
|
|
|
if (document == null)
|
|
document = datathread.DocumentPDF;
|
|
|
|
MargineTop = document.getLastPos();
|
|
|
|
datitab.table.Columns[1].Caption = string.Empty;
|
|
|
|
|
|
datitab.setY(document.getLastPos());
|
|
datitab.setIsRet();
|
|
datitab.setIsLinee(1);
|
|
datitab.setHeader();
|
|
|
|
datitab.setCell(175, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false);
|
|
// ********************Modifica Andrea ***********************************************//
|
|
datitab.setCell(150, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false); // 90
|
|
//************************************************************************************//
|
|
datitab.setCell(150, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdana, false); // 120
|
|
datitab.setCellSpace(10);
|
|
|
|
//eventuali operazioni sul dataset
|
|
//calcola se entra nella pagina altrimenti aggiunge una nuova pagina.
|
|
float altezzaNotaPatrimonioNonRappresentabile = tabTortaPatrimonioNonRappresentabile == null ? 0 : tabTortaPatrimonioNonRappresentabile.Rows.Count;
|
|
altezzaNotaPatrimonioNonRappresentabile = altezzaNotaPatrimonioNonRappresentabile * 30;
|
|
|
|
|
|
//V if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile))
|
|
//Aggiunto 30 per non far sforare la S10
|
|
if (document.checkMargin(ChartHeigth + altezzaNotaPatrimonioNonRappresentabile + 30))
|
|
document.addPage();
|
|
|
|
|
|
if (_noIndicizzato)
|
|
document.setTitolo(datathread.SezioneReport.Titolo);
|
|
else
|
|
{
|
|
document.setChapterHeader(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete).Replace("Sanpaolo Invest", "Fideuram S.p.A., commercializzato tramite la rete di private banker Sanpaolo Invest,"), 0, Convert.ToInt32(document.getLastPos()) - 10, 520, 8);
|
|
}
|
|
|
|
|
|
#region Inizio sezione Grafico
|
|
// Grafico
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(datitab.table);
|
|
|
|
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
// Paginazione
|
|
while (cut)
|
|
{
|
|
if (vista.Rows.Count != 0)
|
|
{
|
|
|
|
if (datathread.Periodico)
|
|
{
|
|
var idModello = datathread.ReportsType.Find(f => f.Descrizione == "Monitoraggio").IdModello;
|
|
if (idModello == 6) // FD
|
|
MaxRow = document.getWritableRow(24, false); //23
|
|
else
|
|
MaxRow = document.getWritableRow(23, false); //23
|
|
}
|
|
else
|
|
MaxRow = document.getWritableRow(23, false); //23
|
|
|
|
vista.Columns.Add("ID");
|
|
int i = 0;
|
|
cut = false;
|
|
foreach (DataRow myRow in vista.Rows)
|
|
{
|
|
if (i < MaxRow)
|
|
myRow["ID"] = 1;
|
|
else
|
|
{
|
|
myRow["ID"] = 2;
|
|
cut = true;
|
|
}
|
|
i++;
|
|
}
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 1");
|
|
}
|
|
else
|
|
cut = false;
|
|
|
|
datitab.table = view.ToTable(false, setTableForFDAssetClass());
|
|
|
|
dim = datitab.GetRowDim() * (datitab.getNumRow() + 1);
|
|
|
|
#region Grafico Percentuale
|
|
// Grafico
|
|
IstoFarfallaS133BIS graficoCaratteristiche = null;
|
|
|
|
if (cut)
|
|
{
|
|
graficoCaratteristiche = new IstoFarfallaS133BIS(180, 500); //220 //180
|
|
graficoCaratteristiche.DocumentPDF = document;
|
|
graficoCaratteristiche.PositionX = 230; //145
|
|
graficoCaratteristiche.PositionY = Convert.ToInt32(document.getLastPos() + 9); //32 //38 //42 //542 //22 //25;
|
|
graficoCaratteristiche.AxisY_LineColor = true;
|
|
graficoCaratteristiche.AxisY_Hide = true; //false;
|
|
graficoCaratteristiche.AxysX_Increment = Convert.ToDecimal(1);
|
|
graficoCaratteristiche.AxisY_DashStyle = Dundas.Charting.WebControl.ChartDashStyle.DashDot;
|
|
graficoCaratteristiche.isShadowOffset = false; // Abilita l'ombreggiatura delle barre per ESG è fissato a 40
|
|
graficoCaratteristiche.isPixelPointWidth = "40"; // serve per dimensionare l'altezza delle barre
|
|
graficoCaratteristiche.BorderLineColor = System.Drawing.Color.FromArgb(0, 0, 0);
|
|
graficoCaratteristiche.BorderLineWidth = 10;
|
|
}
|
|
else
|
|
{
|
|
graficoCaratteristiche = new IstoFarfallaS133BIS(220, datitab.GetRowDim() * (datitab.getNumRow())); //540
|
|
graficoCaratteristiche.DocumentPDF = document;
|
|
graficoCaratteristiche.PositionX = 230; //145
|
|
graficoCaratteristiche.PositionY = Convert.ToInt32(document.getLastPos() + 9); //32 //38 //42 //542 //22 //25;
|
|
graficoCaratteristiche.AxisY_LineColor = true;
|
|
graficoCaratteristiche.AxisY_Hide = true; //false;
|
|
graficoCaratteristiche.AxysX_Increment = Convert.ToDecimal(1);
|
|
graficoCaratteristiche.AxisY_DashStyle = Dundas.Charting.WebControl.ChartDashStyle.DashDot;
|
|
graficoCaratteristiche.isShadowOffset = false; // Abilita l'ombreggiatura delle barre per ESG è fissato a 40
|
|
graficoCaratteristiche.isPixelPointWidth = "40"; // serve per dimensionare l'altezza delle barre
|
|
graficoCaratteristiche.BorderLineColor = System.Drawing.Color.FromArgb(0, 0, 0);
|
|
graficoCaratteristiche.BorderLineWidth = 10;
|
|
}
|
|
|
|
System.Collections.Generic.List<IValoriSerie> listaValoriPesoRelativo = new System.Collections.Generic.List<IValoriSerie>();
|
|
foreach (var item in datitab.table.AsEnumerable())
|
|
{
|
|
IValoriSerie IvaloriSeriePesoRelativo = new IValoriSerie();
|
|
IvaloriSeriePesoRelativo.chiave = item[0].ToString();
|
|
IvaloriSeriePesoRelativo.valore = Convert.ToDecimal(item[1]);
|
|
IvaloriSeriePesoRelativo.colore = System.Drawing.Color.FromArgb((int)item["Red"], (int)item["Green"], (int)item["Blue"]);
|
|
listaValoriPesoRelativo.Add(IvaloriSeriePesoRelativo);
|
|
}
|
|
|
|
SerieIstoFarfallaS133BIS seriePesoRelativo = new SerieIstoFarfallaS133BIS();
|
|
|
|
seriePesoRelativo = new SerieIstoFarfallaS133BIS();
|
|
seriePesoRelativo.Name = "Caratteristiche%";
|
|
seriePesoRelativo.Values = listaValoriPesoRelativo;
|
|
//seriePesoRelativo.ElementPosition = new Dundas.Charting.WebControl.ElementPosition(1F, -5F, 50.7F, 105F);
|
|
//seriePesoRelativo.ElementPosition = new Dundas.Charting.WebControl.ElementPosition(1F, -5F, 50.7F, 100F); //100 // ultimo parametro per aumentare lo spazio tra le barre
|
|
seriePesoRelativo.ElementPosition = new Dundas.Charting.WebControl.ElementPosition(1F, -1F, 50.7F, 100F); //100 // ultimo parametro per aumentare lo spazio tra le barre
|
|
seriePesoRelativo.AxisY_CustumizedByValues = false;
|
|
seriePesoRelativo.ReverseAxisY = false;
|
|
seriePesoRelativo.Axisy_Interval = 0; //10
|
|
|
|
graficoCaratteristiche.SerieList.Add(seriePesoRelativo);
|
|
graficoCaratteristiche.Draw();
|
|
|
|
#endregion
|
|
//ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
#region Header per la tabella
|
|
DataTable table = view.ToTable(false, this.setTableForFD());
|
|
|
|
table.Columns["PercentualeString"].ColumnName = "Percentuale";
|
|
table.Columns["percentuale_modello_string"].ColumnName = "Percentuale Modello";
|
|
|
|
datitab.table = table;
|
|
|
|
// Impostazione e stampa header tabella
|
|
if (datathread.Rete == "S" && datitab.table.Rows.Count > 18) //Andrea Rosaspina
|
|
datitab.setY(document.getLastPos() - 4);
|
|
else
|
|
datitab.setY(document.getLastPos());
|
|
|
|
datitab.setX(document.getMargineLeft());
|
|
|
|
if (DirectBanker == "S")
|
|
tab.ColoreDirectBankB = "green";
|
|
|
|
//setta posizione tabella
|
|
document.InsertTable(tab.getTabella(datitab));
|
|
#endregion
|
|
|
|
if (!_saltopaginaeffettuato)
|
|
{
|
|
//float yRectBarra = Convert.ToSingle((datitab.GetRowDim() * datitab.getNumRow()) + MargineTop + 60);
|
|
float yRectBarra = Convert.ToSingle((datitab.GetRowDim() * datitab.getNumRow()) + MargineTop + 110);
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRectBarra, 199, 23, 0, new RgbColor(255, 255, 255)));
|
|
//if(datathread.Rete == "S" && tabTortaTabella.Rows.Count == 19)
|
|
//page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRectBarra + 5, 199, 34, 0, new RgbColor(255, 255, 255)));
|
|
//else
|
|
page.Elements.Add(new ceTe.DynamicPDF.PageElements.Rectangle(358, yRectBarra, 199, 23, 0, new RgbColor(255, 255, 255)));
|
|
}
|
|
|
|
if (cut)
|
|
{
|
|
/*** Fix - FD riposizionamento dell'indicazione del cambio pagina 06/06/2023 - Pino ****/
|
|
//document.changePage(389, dim + 20);
|
|
|
|
if (datathread.Periodico)
|
|
{
|
|
var idModello = datathread.ReportsType.Find(f => f.Descrizione == "Monitoraggio").IdModello;
|
|
if (idModello == 6) // FD
|
|
document.changePage(500, dim + 20);
|
|
else
|
|
document.changePage(389, dim + 20);
|
|
}
|
|
else
|
|
document.changePage(389, dim + 20);
|
|
/******************************************************************************************/
|
|
|
|
|
|
document.nextPage(document.getMargineLeft());
|
|
datitab.setHeader();
|
|
dim = 0;
|
|
view = new DataView(vista);
|
|
view.RowFilter = ("ID = 2");
|
|
vista = view.ToTable();
|
|
vista.Columns.Remove(vista.Columns["ID"]);
|
|
_saltopaginaeffettuato = true;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region Header della tabella Non più utilizzato
|
|
var xrowDim = datitab.GetRowDim();
|
|
datitab.SetRowDim(xrowDim);
|
|
|
|
/*** Aggiungo 2 colonne per l'header della tabella 30/05/2023 - Pino ***/
|
|
|
|
tabMacroAssetClass.Columns.Add(new DataColumn("PortafoglioModello", typeof(System.String)));
|
|
tabMacroAssetClass.Columns.Add(new DataColumn("PortafoglioAttuale", typeof(System.String)));
|
|
|
|
/*******************************************************************/
|
|
|
|
|
|
DatiTabella datitabRap = new DatiTabella(tabMacroAssetClass);
|
|
datitab.table = view.ToTable(false, setTableForFDAssetClass());
|
|
Tabella tabellaDatiRap = new Tabella(document.getMargineLeft(), document.getLastPos());
|
|
tabellaDatiRap.Header = true;
|
|
tabellaDatiRap.Colonne.Add(new Colonna("AssetClassName", "Asset class", 160, TipoAllineamento.SINISTRA, false, 9, false, TipoColonna.TESTO));
|
|
tabellaDatiRap.Colonne.Add(new Colonna("PortafoglioModello", "Portafoglio Modello (%)", 160, TipoAllineamento.SINISTRA, false, 9, false, TipoColonna.TESTO));
|
|
tabellaDatiRap.Colonne.Add(new Colonna("PortafoglioAttuale", "Portafoglio Attuale (%)", 180, TipoAllineamento.SINISTRA, false, 9, false, TipoColonna.TESTO));
|
|
|
|
|
|
if (DirectBanker == "S")
|
|
tabellaDatiRap.ColoreDirectBankB = "green";
|
|
|
|
|
|
//tabellaDatiRap.Draw(datitabRap, document);
|
|
|
|
|
|
dim = datitab.GetRowDim() * (datitab.getNumRow() + 1);
|
|
#endregion
|
|
|
|
}
|
|
/*******************************************************/
|
|
|
|
/***** FD - Per la sezione FD190 08/08/2023 - Pino *****/
|
|
protected void writeSezione190(DataThread datathread)
|
|
{
|
|
DatiTabella datiHeaderCaratteristiche = new DatiTabella();
|
|
DatiTabella datiHeaderPercentualeAttuale = new DatiTabella();
|
|
DatiTabella datiMacroAsset = new DatiTabella();
|
|
Tabella tab = new Tabella(document.getMargineLeft(), document.getLastPos());
|
|
|
|
document = datathread.DocumentPDF;
|
|
|
|
DataSet set = datathread.Data.DatiSezione;
|
|
|
|
#region Titolo e Testo del paragrafo
|
|
logger.Info("Titolo della sezione " + datathread.SezioneReport.TestoIntroduttivo);
|
|
document.setLastPos(-40);
|
|
document.setSezTitolo(datathread.SezioneReport.Titolo);
|
|
document.setChapterHeader(string.Concat(datathread.SezioneReport.TestoIntroduttivo.Replace("/$Banca$/", datathread.NomeRete), "<br>"), 0, 520, 8);
|
|
#endregion
|
|
|
|
#region Stampo la colonna MacroAssetClass
|
|
|
|
//datitab.table = tabMacroAssetClass;
|
|
|
|
//Tabella tabellaDati = new Tabella(document.getMargineLeft(), document.getLastPos());
|
|
//tabellaDati.Header = true;
|
|
//tabellaDati.HeaderFont = 8;
|
|
//tabellaDati.Datasource = tabMacroAssetClass;
|
|
//tabellaDati.AltezzaCella = 15;
|
|
//tabellaDati.Colonne.Add(new Colonna("AssetClassName", "Macro Asset Class", 120, TipoAllineamento.SINISTRA, false, 8, false, TipoColonna.TESTO));
|
|
|
|
//if (DirectBanker == "S")
|
|
// tabellaDati.ColoreDirectBankB = "green";
|
|
|
|
//tabellaDati.Draw(datitab, document);
|
|
#endregion
|
|
|
|
|
|
#region Sezione per stampare solo l'header della tabella
|
|
//logger.Info("Scrittura di solo header della tabella Titolo della seconda tabella " + _testointroduttivo);
|
|
DataSet _ds = new DataSet();
|
|
DataTable _dt = new DataTable();
|
|
_dt.Columns.Add("Macro Asset Class", typeof(System.String));
|
|
_dt.Columns.Add("Portafoglio modello (%)", typeof(System.String));
|
|
_dt.Columns.Add("Portafoglio attuale (%)", typeof(System.String));
|
|
|
|
_ds.Tables.Add(_dt);
|
|
DataRow dr = _dt.NewRow();
|
|
dr[0] = "";
|
|
dr[1] = "";
|
|
dr[2] = "";
|
|
|
|
_dt.Rows.Add(dr);
|
|
|
|
datiHeaderCaratteristiche.table = _ds.Tables[0];
|
|
|
|
datiHeaderCaratteristiche.setY(document.getLastPos() + 10);
|
|
datiHeaderCaratteristiche.setX(document.getMargineLeft());
|
|
|
|
datiHeaderCaratteristiche.setHeader(true);
|
|
datiHeaderCaratteristiche.setCellSpace(10);
|
|
datiHeaderCaratteristiche.setCell(150, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, false);
|
|
datiHeaderCaratteristiche.setCell(150, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, false);
|
|
datiHeaderCaratteristiche.setCell(150, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, false);
|
|
|
|
tab.ColoreDirectBankB = "green";
|
|
|
|
document.InsertTable(tab.getTabella(datiHeaderCaratteristiche));
|
|
|
|
ceTe.DynamicPDF.Merger.ImportedPage page1 = document.getCurrentPage();
|
|
#endregion
|
|
|
|
|
|
#region Grafico Percentuale modello
|
|
// Grafico
|
|
DatiGrafico dati = new DatiGrafico();
|
|
DataView view = new DataView(tabMacroAssetClass);
|
|
view.RowFilter = "";
|
|
dati.dataTab = view.ToTable(false, this.setTableForIsto190());
|
|
|
|
//switch (dati.dataTab.Rows.Count)
|
|
//{
|
|
// case 3:
|
|
// dati.setHeight(ChartHeigth - 25);
|
|
// break;
|
|
// case 4:
|
|
// dati.setHeight(ChartHeigth);
|
|
// //dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
// break;
|
|
// case 5:
|
|
// //dati.setHeight(ChartHeigth + 24);
|
|
// dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + ((datitab.GetRowDim() * datitab.getNumRow()) + datitab.GetRowDim() + 15));
|
|
// break;
|
|
// case 6:
|
|
// dati.setHeight(ChartHeigth + 49);
|
|
// break;
|
|
// default:
|
|
// //dati.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow()+2.5)));
|
|
// /**************************** Fix Aladdin centratura barra Pino ***************************************************/
|
|
// //dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + (datitab.GetRowDim() * (datitab.getNumRow() + 1)));
|
|
// dati.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + ((datitab.GetRowDim() * datitab.getNumRow()) + datitab.GetRowDim() + 10));
|
|
// /*******************************************************************************************************************/
|
|
// break;
|
|
//}
|
|
|
|
|
|
dati.setWidth(200);
|
|
Istogramma isto = new Istogramma();
|
|
//document.InsertGrafico(isto.getGrafico(dati), 360, document.getLastPos() - 11);
|
|
// document.InsertGrafico(isto.getGrafico(dati), 180, document.getLastPos() - 8); /// Buona
|
|
|
|
ceTe.DynamicPDF.Merger.ImportedPage page = document.getCurrentPage();
|
|
|
|
// Scrittura del footer sul grafico
|
|
//FormatNum format = new FormatNum();
|
|
//ArrayList Labels = format.CreateCustomPerc148(dati.getValMax(), dati.getValMin());
|
|
|
|
//switch (dati.dataTab.Rows.Count)
|
|
//{
|
|
// case 3:
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 91, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
// break;
|
|
// case 4:
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 115, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 115, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
// break;
|
|
// case 5:
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[0].ToString(), 360, document.getLastPos() + 135, 120, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Left, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[1].ToString(), 360, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[2].ToString(), 403, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// //page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[3].ToString(), 448, document.getLastPos() + 91, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Center, ceTe.DynamicPDF.CmykColor.Black));
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[4].ToString(), 454, document.getLastPos() + 135, 100, 10, Globals.OpenTypeFontVerdana, 6, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
// break;
|
|
// default:
|
|
// //float passo = 40.0F;
|
|
// float passo = 45.0F;
|
|
// //float passo = 50.0F;
|
|
// for (int i = 0; i <= Labels.Count - 1; ++i)
|
|
// if (i == 0)
|
|
// {
|
|
// if (dati.getValMin() < 0)
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 280F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
// else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + i, yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
// }
|
|
// else
|
|
// page.Elements.Add(new ceTe.DynamicPDF.PageElements.Label(Labels[i].ToString(), 275F + (passo * i), yRect + 5, 100, 10, Globals.OpenTypeFontVerdana, 8, ceTe.DynamicPDF.TextAlign.Right, ceTe.DynamicPDF.CmykColor.Black));
|
|
|
|
// break;
|
|
//}
|
|
|
|
|
|
#endregion
|
|
|
|
#region Grafico Percentuale
|
|
// Grafico
|
|
DatiGrafico datiPercentuale = new DatiGrafico();
|
|
DataView viewPercentuale = new DataView(tabMacroAssetClass);
|
|
view.RowFilter = "";
|
|
datiPercentuale.dataTab = viewPercentuale.ToTable(false, this.setTableForIsto());
|
|
|
|
switch (dati.dataTab.Rows.Count)
|
|
{
|
|
case 3:
|
|
datiPercentuale.setHeight(ChartHeigth - 25);
|
|
break;
|
|
case 4:
|
|
datiPercentuale.setHeight(ChartHeigth);
|
|
//datiPercentuale.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow())));
|
|
break;
|
|
case 5:
|
|
//datiPercentuale.setHeight(ChartHeigth + 24);
|
|
datiPercentuale.setHeight(Convert.ToSingle(datiHeaderCaratteristiche.getHeaderDim()) + ((datiHeaderCaratteristiche.GetRowDim() * datiHeaderCaratteristiche.getNumRow()) + datiHeaderCaratteristiche.GetRowDim() + 100));
|
|
break;
|
|
case 6:
|
|
datiPercentuale.setHeight(ChartHeigth + 49);
|
|
break;
|
|
default:
|
|
//datiPercentuale.setHeight(Convert.ToSingle(datitab.GetRowDim() * (datitab.getNumRow()+2.5)));
|
|
/**************************** Fix Aladdin centratura barra Pino ***************************************************/
|
|
//datiPercentuale.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + (datitab.GetRowDim() * (datitab.getNumRow() + 1)));
|
|
datiPercentuale.setHeight(Convert.ToSingle(datitab.getHeaderDim()) + ((datitab.GetRowDim() * datitab.getNumRow()) + datitab.GetRowDim() + 10));
|
|
/*******************************************************************************************************************/
|
|
break;
|
|
}
|
|
|
|
|
|
datiPercentuale.setWidth(200);
|
|
Istogramma istoPercentuale = new Istogramma();
|
|
istoPercentuale.isPixelPointWidth = "10";
|
|
istoPercentuale.isShadowOffset = false; // serve per impostare l'ombreggiatura delle barre
|
|
|
|
//document.InsertGrafico(isto.getGrafico(dati), 360, document.getLastPos() - 11);
|
|
document.InsertGrafico(istoPercentuale.getGraficoFD190(datiPercentuale), 340, document.getLastPos()+30); /// Buona
|
|
#endregion
|
|
|
|
#region Elenco MacroAsset
|
|
/****** Inserimento tabella con le due colonne e con la colonna delle Caratteristiche riempita ********/
|
|
logger.Info("Inizio inserimento tabella Macro Asset");
|
|
datiMacroAsset.table = set.Tables["MacroAssetClass"];
|
|
Tabella tabellaMacroAsset = new Tabella(document.getMargineLeft(), document.getLastPos() + 78, 0, -2, 0.009F); //90 68
|
|
|
|
tabellaMacroAsset.Datasource = datiMacroAsset.table;
|
|
tabellaMacroAsset.Header = false;
|
|
tabellaMacroAsset.DimensioneLinea = 0;
|
|
tabellaMacroAsset.AltezzaCella = 30; //35;
|
|
tabellaMacroAsset.Colonne.Add(new Colonna("AssetClassName", "Asset Class", 150, TipoAllineamento.SINISTRA, false, 9, false, TipoColonna.TESTO));
|
|
tabellaMacroAsset.Draw(datiMacroAsset, document);
|
|
logger.Info("Fine inserimento tabella MacroAsset");
|
|
/***********************************************************************************************************/
|
|
#endregion
|
|
|
|
#region Sezione per stampare solo l'header della tabella Percentuale modello
|
|
//logger.Info("Scrittura di solo header della tabella Titolo della seconda tabella " + datathread.SezioneReport.TestoIntroduttivo);
|
|
//DataSet _ds = new DataSet();
|
|
//DataTable _dt = new DataTable();
|
|
//_dt.Columns.Add("Portafoglio modello (%)", typeof(System.String));
|
|
|
|
//_ds.Tables.Add(_dt);
|
|
//DataRow dr = _dt.NewRow();
|
|
//dr[0] = "";
|
|
|
|
//_dt.Rows.Add(dr);
|
|
|
|
//datiHeaderCaratteristiche.table = _ds.Tables[0];
|
|
|
|
|
|
////datiHeaderCaratteristiche.setY(document.getLastPos());
|
|
////datiHeaderCaratteristiche.setX(document.getMargineLeft()+150);
|
|
|
|
////datiHeaderCaratteristiche.setHeader(true);
|
|
////datiHeaderCaratteristiche.setCellSpace(10);
|
|
////datiHeaderCaratteristiche.setCell(150, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, false);
|
|
////datiHeaderCaratteristiche.setCell(150, ceTe.DynamicPDF.TextAlign.Left, Globals.OpenTypeFontVerdanaB, false);
|
|
|
|
//Tabella tab = new Tabella(document.getMargineLeft()+145, document.getLastPos());
|
|
//tab.Header = true;
|
|
//tab.HeaderFont = 8;
|
|
//tab.Datasource = _ds.Tables[0];
|
|
//tab.AltezzaCella = 15;
|
|
//tab.Colonne.Add(new Colonna("Portafoglio modello (%)", "Portafoglio modello (%)", 100, TipoAllineamento.SINISTRA, false, 8, false, TipoColonna.TESTO));
|
|
|
|
//if (DirectBanker == "S")
|
|
// tab.ColoreDirectBankB = "green";
|
|
|
|
//tab.Draw(datiHeaderCaratteristiche, document);
|
|
#endregion
|
|
|
|
#region Sezione per stampare solo l'header della tabella Percentuale attuale
|
|
//DataSet _dsAttuale = new DataSet();
|
|
//DataTable _dtAttuale = new DataTable();
|
|
//_dtAttuale.Columns.Add("Portafoglio attuale (%)", typeof(System.String));
|
|
|
|
//_dsAttuale.Tables.Add(_dtAttuale);
|
|
//DataRow drAttuale = _dtAttuale.NewRow();
|
|
//drAttuale[0] = "";
|
|
|
|
//_dtAttuale.Rows.Add(drAttuale);
|
|
|
|
//datiHeaderPercentualeAttuale.table = _dsAttuale.Tables[0];
|
|
|
|
//Tabella tabAttuale = new Tabella(document.getMargineLeft() + 340, document.getLastPos());
|
|
//tabAttuale.Header = true;
|
|
//tabAttuale.HeaderFont = 8;
|
|
//tabAttuale.Datasource = _dsAttuale.Tables[0];
|
|
//tabAttuale.AltezzaCella = 15;
|
|
//tabAttuale.Colonne.Add(new Colonna("Portafoglio attuale (%)", "Portafoglio attuale (%)", 160, TipoAllineamento.SINISTRA, false, 8, false, TipoColonna.TESTO));
|
|
|
|
//if (DirectBanker == "S")
|
|
// tabAttuale.ColoreDirectBankB = "green";
|
|
|
|
//tabAttuale.Draw(datiHeaderPercentualeAttuale, document);
|
|
#endregion
|
|
}
|
|
/*******************************************************/
|
|
|
|
|
|
|
|
protected void addNota(DocumentPDF doc, float cc, float max, string rete, int dim)
|
|
{
|
|
FormatNum con = new FormatNum();
|
|
if (rete == "F")
|
|
{
|
|
if (cc > 0)
|
|
//FC 26062015 Aggionamento nuova Ragione Sociale
|
|
//doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse Banca FIDEURAM (al lordo del conto corrente pari a € " + con.ConvertNum(cc) + ") e presso altri Istituti.", dim);
|
|
doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse FIDEURAM (al lordo del conto corrente pari a € " + con.ConvertNum(cc) + ") e presso altri Istituti.", dim);
|
|
else if (cc < 0)
|
|
//FC 26062015 Aggionamento nuova Ragione Sociale
|
|
//doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse Banca FIDEURAM (al netto del conto corrente pari a € " + con.ConvertNum(cc) + ") e presso altri Istituti.", dim);
|
|
doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse FIDEURAM (al netto del conto corrente pari a € " + con.ConvertNum(cc) + ") e presso altri Istituti.", dim);
|
|
else
|
|
//FC 26062015 Aggionamento nuova Ragione Sociale
|
|
//doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse Banca FIDEURAM e presso altri Istituti.", dim);
|
|
doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse FIDEURAM e presso altri Istituti.", dim);
|
|
}
|
|
else
|
|
{
|
|
if (cc > 0)
|
|
doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse Sanpaolo Invest (al lordo del conto corrente pari a € " + con.ConvertNum(cc) + ") e presso altri Istituti.", dim);
|
|
else if (cc < 0)
|
|
doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse Sanpaolo Invest (al netto del conto corrente pari a € " + con.ConvertNum(cc) + ") e presso altri Istituti.", dim);
|
|
else
|
|
doc.setSezFooter("La distribuzione riportata è rappresentativa del " + con.ConvertNum(tabNota.Rows[0]["ValorePercentuale"]) + "% delle risorse Sanpaolo Invest e presso altri Istituti.", dim);
|
|
}
|
|
}
|
|
|
|
public void setTitolo(string label)
|
|
{
|
|
Titolo = label;
|
|
}
|
|
|
|
public bool NoIndicizzato
|
|
{
|
|
set
|
|
{
|
|
_noIndicizzato = value;
|
|
}
|
|
}
|
|
|
|
public string Header
|
|
{
|
|
get
|
|
{
|
|
return _header;
|
|
}
|
|
set
|
|
{
|
|
_header = value;
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
}
|