conversione a webapp project, sta andando avanti..n on compila ancora tutto...

git-svn-id: https://keyhammer.ath.cx/svn/XPS/trunk@113 43c8e981-f90d-406c-a89a-24a2c4268d51
This commit is contained in:
samuele
2011-11-02 07:40:10 +00:00
parent e62f6b5985
commit 22bf08d19f
427 changed files with 73950 additions and 43 deletions
Binary file not shown.
@@ -0,0 +1,32 @@
<?xml version="1.0"?>
<configuration>
<configSections>
</configSections>
<appSettings>
<add key="reportConnectionString" value="Data Source=localhost;Initial Catalog=SteamWare_XPS;Persist Security Info=True;User id=sa;Password=keyhammer" />
<add key="ClientSettingsProvider.ServiceUri" value="" />
</appSettings>
<connectionStrings>
<add name="PrintLocalReport.Properties.Settings.SteamWare_XPSConnectionString"
connectionString="Data Source=localhost;Initial Catalog=SteamWare_XPS;Persist Security Info=True;User ID=equa;Password=steamware"
providerName="System.Data.SqlClient" />
<add name="PrintLocalReport.Properties.Settings.SteamWare_XPSConnectionString1"
connectionString="Data Source=localhost;Initial Catalog=SteamWare_XPS;Persist Security Info=True;User ID=sa;Password=keyhammer"
providerName="System.Data.SqlClient" />
</connectionStrings>
<startup>
<supportedRuntime version="v2.0.50727" />
</startup>
<system.web>
<membership defaultProvider="ClientAuthenticationMembershipProvider">
<providers>
<add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
</providers>
</membership>
<roleManager defaultProvider="ClientRoleProvider" enabled="true">
<providers>
<add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
</providers>
</roleManager>
</system.web>
</configuration>
@@ -0,0 +1,32 @@
<?xml version="1.0"?>
<configuration>
<configSections>
</configSections>
<appSettings>
<add key="reportConnectionString" value="Data Source=localhost;Initial Catalog=SteamWare_XPS;Persist Security Info=True;User id=sa;Password=keyhammer" />
<add key="ClientSettingsProvider.ServiceUri" value="" />
</appSettings>
<connectionStrings>
<add name="PrintLocalReport.Properties.Settings.SteamWare_XPSConnectionString"
connectionString="Data Source=localhost;Initial Catalog=SteamWare_XPS;Persist Security Info=True;User ID=equa;Password=steamware"
providerName="System.Data.SqlClient" />
<add name="PrintLocalReport.Properties.Settings.SteamWare_XPSConnectionString1"
connectionString="Data Source=localhost;Initial Catalog=SteamWare_XPS;Persist Security Info=True;User ID=sa;Password=keyhammer"
providerName="System.Data.SqlClient" />
</connectionStrings>
<startup>
<supportedRuntime version="v2.0.50727" />
</startup>
<system.web>
<membership defaultProvider="ClientAuthenticationMembershipProvider">
<providers>
<add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
</providers>
</membership>
<roleManager defaultProvider="ClientRoleProvider" enabled="true">
<providers>
<add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
</providers>
</roleManager>
</system.web>
</configuration>
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
@@ -0,0 +1,2 @@
C:\Users\samuele\Documents\Visual Studio 2008\Projects\XPS\PrintLocalReport\bin\Debug\PrintLocalReport.exe.config
c:\Users\samuele.STEAMWAREWIN\Documents\Visual Studio 2008\Projects\XPS\PrintLocalReport\bin\Debug\PrintLocalReport.exe.config
+34
View File
@@ -0,0 +1,34 @@
<%@ Page Language="C#" MasterPageFile="~/WebMasterPages/AjaxSearch.master" AutoEventWireup="true" Inherits="AnagraficaEventi" Title="Untitled Page" Codebehind="AnagraficaEventi.aspx.cs" %>
<%@ Register Src="WebUserControls/mod_ev2stati.ascx" TagName="mod_ev2stati" TagPrefix="uc2" %>
<%@ Register Src="WebUserControls/mod_anagraficaEventi.ascx" TagName="mod_anagraficaEventi" TagPrefix="uc1" %>
<%@ Register Src="WebUserControls/mod_filtro.ascx" TagName="mod_filtro" TagPrefix="uc4" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<uc1:mod_anagraficaEventi ID="Mod_anagraficaEventi1" runat="server" />
<asp:Panel runat="server" ID="pnlDet" Visible="false" Width="100%">
<table>
<tr>
<td>
<div class="filtro_1">
<uc4:mod_filtro ID="Mod_filtroTipoObj" runat="server" changeCheckEnabled="false"
changeCheckVisible="false" />
<asp:ObjectDataSource ID="odsTipoObj" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selTipoObjTableAdapter">
</asp:ObjectDataSource>
</div>
<div class="filtro_2">
<uc4:mod_filtro ID="Mod_filtroMappa" runat="server" changeCheckEnabled="false" changeCheckVisible="false" />
<asp:ObjectDataSource ID="odsMappa" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selTipoMappaTableAdapter">
</asp:ObjectDataSource>
</div>
</td>
</tr>
<tr>
<td>
<uc2:mod_ev2stati ID="Mod_ev2stati1" runat="server" />
</td>
</tr>
</table>
</asp:Panel>
</asp:Content>
+65
View File
@@ -0,0 +1,65 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class AnagraficaEventi : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Mod_filtroMappa.ods = odsMappa;
Mod_filtroTipoObj.ods = odsTipoObj;
}
Mod_anagraficaEventi1.eh_selValore += new EventHandler(Mod_anagraficaEventi1_eh_selValore);
Mod_anagraficaEventi1.eh_resetSelezione += new EventHandler(Mod_anagraficaEventi1_eh_resetSelezione);
Mod_filtroMappa.eh_selValore += new EventHandler(Mod_filtroMappa_eh_selValore);
Mod_filtroTipoObj.eh_selValore += new EventHandler(Mod_filtroTipoObj_eh_selValore);
}
void Mod_filtroTipoObj_eh_selValore(object sender, EventArgs e)
{
// salvo in session
SteamWare.memLayer.ML.setSessionVal("IdxTipoObj_sel", Mod_filtroTipoObj.valoreInt, false);
// update!
Mod_ev2stati1.doUpdate();
}
void Mod_filtroMappa_eh_selValore(object sender, EventArgs e)
{
// salvo in session
SteamWare.memLayer.ML.setSessionVal("CodMappa_sel", Mod_filtroMappa.valore, false);
// update!
Mod_ev2stati1.doUpdate();
}
void Mod_anagraficaEventi1_eh_resetSelezione(object sender, EventArgs e)
{
pnlDet.Visible = false;
}
void Mod_anagraficaEventi1_eh_selValore(object sender, EventArgs e)
{
// salvo valore iniziale filtro...
SteamWare.memLayer.ML.setSessionVal("CodMappa_sel", Mod_filtroMappa.valore, false);
SteamWare.memLayer.ML.setSessionVal("IdxTipoObj_sel", Mod_filtroTipoObj.valoreInt, false);
// mostro panel...
pnlDet.Visible = true;
}
protected override void OnUnload(EventArgs e)
{
base.OnUnload(e);
Mod_anagraficaEventi1.eh_selValore -= new EventHandler(Mod_anagraficaEventi1_eh_selValore);
Mod_anagraficaEventi1.eh_resetSelezione -= new EventHandler(Mod_anagraficaEventi1_eh_resetSelezione);
Mod_filtroMappa.eh_selValore -= new EventHandler(Mod_filtroMappa_eh_selValore);
Mod_filtroTipoObj.eh_selValore -= new EventHandler(Mod_filtroTipoObj_eh_selValore);
}
}
+77
View File
@@ -0,0 +1,77 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AnagraficaEventi {
/// <summary>
/// Mod_anagraficaEventi1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_anagraficaEventi Mod_anagraficaEventi1;
/// <summary>
/// pnlDet control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlDet;
/// <summary>
/// Mod_filtroTipoObj control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro Mod_filtroTipoObj;
/// <summary>
/// odsTipoObj control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsTipoObj;
/// <summary>
/// Mod_filtroMappa control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro Mod_filtroMappa;
/// <summary>
/// odsMappa control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsMappa;
/// <summary>
/// Mod_ev2stati1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_ev2stati Mod_ev2stati1;
}
+9
View File
@@ -0,0 +1,9 @@
<%@ Page Language="C#" MasterPageFile="~/WebMasterPages/AjaxSearch.master" AutoEventWireup="true" Inherits="AnagraficaMappe" Title="Untitled Page" Codebehind="AnagraficaMappe.aspx.cs" %>
<%@ Register Src="WebUserControls/mod_anagraficaMappe.ascx" TagName="mod_anagraficaMappe" TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<a href="AnagraficaMappe.aspx"></a>
<uc1:mod_anagraficaMappe ID="Mod_anagraficaMappe1" runat="server" />
<a href="AnagraficaMappe.aspx"></a>
</asp:Content>
+18
View File
@@ -0,0 +1,18 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class AnagraficaMappe : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
+23
View File
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AnagraficaMappe {
/// <summary>
/// Mod_anagraficaMappe1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_anagraficaMappe Mod_anagraficaMappe1;
}
+7
View File
@@ -0,0 +1,7 @@
<%@ Page Language="C#" MasterPageFile="~/WebMasterPages/AjaxSearch.master" AutoEventWireup="true" Inherits="AnagraficaObjSet" Title="Untitled Page" Codebehind="AnagraficaObjSet.aspx.cs" %>
<%@ Register Src="WebUserControls/mod_anagraficaObjSet.ascx" TagName="mod_anagraficaObjSet" TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<uc1:mod_anagraficaObjSet ID="mod_anagraficaObjSet1" runat="server" />
</asp:Content>
+18
View File
@@ -0,0 +1,18 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class AnagraficaObjSet : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
+23
View File
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AnagraficaObjSet {
/// <summary>
/// mod_anagraficaObjSet1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::mod_anagraficaObjSet mod_anagraficaObjSet1;
}
+7
View File
@@ -0,0 +1,7 @@
<%@ Page Language="C#" MasterPageFile="~/WebMasterPages/AjaxSearch.master" AutoEventWireup="true" Inherits="AnagraficaStati" Title="Untitled Page" Codebehind="AnagraficaStati.aspx.cs" %>
<%@ Register Src="WebUserControls/mod_anagraficaStati.ascx" TagName="mod_anagraficaStati" TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<uc1:mod_anagraficaStati ID="Mod_anagraficaStati1" runat="server" />
</asp:Content>
+18
View File
@@ -0,0 +1,18 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class AnagraficaStati : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
+23
View File
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AnagraficaStati {
/// <summary>
/// Mod_anagraficaStati1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_anagraficaStati Mod_anagraficaStati1;
}
+7
View File
@@ -0,0 +1,7 @@
<%@ Page Language="C#" MasterPageFile="~/WebMasterPages/AjaxSearch.master" AutoEventWireup="true" Inherits="AnagraficaTipoObj" Title="Untitled Page" Codebehind="AnagraficaTipoObj.aspx.cs" %>
<%@ Register Src="WebUserControls/mod_selettore_ajax.ascx" TagName="mod_selettore_ajax" TagPrefix="uc1" %>
<%@ Register Src="WebUserControls/mod_anagTipoObj.ascx" TagName="mod_anagTipoObj" TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<uc1:mod_anagTipoObj ID="Mod_anagTipoObj1" runat="server" />
</asp:Content>
+18
View File
@@ -0,0 +1,18 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class AnagraficaTipoObj : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
+23
View File
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AnagraficaTipoObj {
/// <summary>
/// Mod_anagTipoObj1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::mod_anagTipoObj Mod_anagTipoObj1;
}
+62
View File
@@ -0,0 +1,62 @@
------------------------------------------------
- 20081024
------------------------------------------------
OK - togliere codCli (non gli serve)
OK - togliere data prev da ins magazziniere...
OK - agganciare filtraggi e filtro ricerca generica
OK - accettazione x magazziniere, che non possa accettare o cancellare post aver già accettato... idem x editing...
OK - inserire voci in mantis varie
OK - una vista x ogni funzione
OK - magazzino
OK - produzione
OK - realizzare allocazione risorse (data)
OK --> FARE a livello di elencoCommesse (che sovrascrive TUTTI i child) così:
OK + select al posto di update
OK + override con click method e lasciare selected
OK + mostrare un panel con i dettagli data/ora e pulsante di salvataggio che prende selected + altro x salvare query...
OK - segreteria
OK - admin (da magazzino... con altri editing & co...)
OK - barcode da web?
------------------------------------------------
- 20081027
------------------------------------------------
- BUG:
OK - errore numerazione righe e ULP...
OK - dettaglio rimanda sempre a scheda direzione e non a quella di provenienza, ToFix!
OK - migliorare interfaccia x navigazione dettagli con
OK - 2 label
OK - testata colorata
OK - fix errore cambio stati...
- cosa può fare ogni funzione?
OK - magazzino: crea, aggiunge righe/ULP e cancella e modifica descrizione fino a quando approva, poi è fuori dal gioco...
OK - indica spedito con barcode
OK - direzione:
OK - può cambiare lo stato...
OK - prod:
OK - indica DueDate in massa o per ogni ULP
OK - segreteria:
OK - indica che è stato fatturato con pulsante
------------------------------------------------
- 20081028
------------------------------------------------
OK - obbligatorio dire fosfatazione/brunitura (usato ExtKey)
OK - fare 2 schede: 1 fosf/brun
OK - elenco mostra sempre da oggi in poi
OK - nelle schede x giorno riportare elenco comm + scadute
OK - mostra fino a stato 4 compreso
OK - mostrare oggetti livello 3 con dettagli "testata" di liv 1-2 (DDT e riga...)
OK - BUG: se cambio valori non si aggiorna il gridView interno
------------------------------------------------
- 20081030
------------------------------------------------
OK- verificare come fa avanzamento stato... TEMO lo faccia x tutto il DDT e NON è corretto... deve farlo SOLO x 1 ULP e POI se tutti sono andati avanti aggiorna il campo mamma e così via...
OK - realizzare con stored update SOLO elementi livello 3...
OK - realizzare con trigger update a cascata... 3-->2 e 2-->1
OK - avanzamento stato: obj mamma ha stato min tra i vari child... + in visualizzazione mostrare stato min e Max
+17
View File
@@ -0,0 +1,17 @@
<%@ Page Language="C#" AutoEventWireup="true" Inherits="_Default" Codebehind="Default.aspx.cs" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<link href="brembo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
+18
View File
@@ -0,0 +1,18 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Redirect("./login.aspx");
}
}
+23
View File
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class _Default {
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
}
+115
View File
@@ -0,0 +1,115 @@
<?xml version="1.0" encoding="utf-8"?>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<DataSources>
<DataSource Name="Equa">
<rd:DataSourceID>48913ed1-58e3-42c7-8f25-ca3c5e5e1b2b</rd:DataSourceID>
<DataSourceReference>Equa</DataSourceReference>
</DataSource>
</DataSources>
<InteractiveHeight>1.7cm</InteractiveHeight>
<Description>Etichetta barcode</Description>
<ReportParameters>
<ReportParameter Name="IdxObj">
<DataType>String</DataType>
<Prompt>IdxObj</Prompt>
</ReportParameter>
</ReportParameters>
<rd:DrawGrid>true</rd:DrawGrid>
<InteractiveWidth>5.4cm</InteractiveWidth>
<rd:GridSpacing>0.25cm</rd:GridSpacing>
<rd:SnapToGrid>true</rd:SnapToGrid>
<rd:ReportID>008d5696-3507-4a77-83be-8177caea9601</rd:ReportID>
<EmbeddedImages>
<EmbeddedImage Name="equa">
<MIMEType>image/jpeg</MIMEType>
<ImageData>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</ImageData>
</EmbeddedImage>
</EmbeddedImages>
<PageWidth>5.4cm</PageWidth>
<DataSets>
<DataSet Name="Equa">
<Fields>
<Field Name="IdxObj">
<DataField>IdxObj</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="DataCreaz">
<DataField>DataCreaz</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>Equa</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>sp_ddt</CommandText>
<QueryParameters>
<QueryParameter Name="@IdxObj">
<Value>=Parameters!IdxObj.Value</Value>
</QueryParameter>
</QueryParameters>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
</DataSet>
</DataSets>
<Author>SteamWare</Author>
<Code />
<Width>5.4cm</Width>
<Body>
<ColumnSpacing>0cm</ColumnSpacing>
<ReportItems>
<Textbox Name="Expr1">
<rd:DefaultName>Expr1</rd:DefaultName>
<Style>
<FontFamily>Free 3 of 9 Extended</FontFamily>
<FontSize>32pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>1</ZIndex>
<Height>1cm</Height>
<Value>="*"&amp;(First(Fields!IdxObj.Value))&amp;"*"</Value>
</Textbox>
<Textbox Name="Expr1_1">
<rd:DefaultName>Expr1_1</rd:DefaultName>
<Top>1cm</Top>
<Width>3.25cm</Width>
<Style>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<CanGrow>true</CanGrow>
<Left>1cm</Left>
<Value>=First(Fields!IdxObj.Value)</Value>
</Textbox>
</ReportItems>
<Height>1.63492cm</Height>
</Body>
<Language>en-US</Language>
<PageHeight>1.7cm</PageHeight>
</Report>
+35
View File
@@ -0,0 +1,35 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("XPS")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Microsoft")]
[assembly: AssemblyProduct("XPS")]
[assembly: AssemblyCopyright("Copyright © Microsoft 2011")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("3d5900ae-111a-45be-96b3-d9e4606ca793")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
+17
View File
@@ -0,0 +1,17 @@
INSERT INTO CLIENTI.[idxSocieta]
SELECT Societa.idxSocieta from Societa
WHERE Societa.descrizione = CLIENTI.[SOCIETA'];
UPDATE Clienti INNER JOIN Societa ON Clienti.[SOCIETA'] = Societa.descrizione
SET Clienti.idxSocieta = [Societa].[idxSocieta];
select CLIENTI.[SOCIETA'], Societa.descrizione
from CLIENTI inner join Societa
ON ltrim(rtrim(CLIENTI.[SOCIETA'])) = ltrim(rtrim(Societa.descrizione));
SELECT *
INTO test.dbo.Clienti
FROM OPENROWSET('MSDASQL',
'Driver={Microsoft Excel Driver (*.xls)};DBQ=C:\Users\Marco\Documents\clienti.xls',
'SELECT * FROM [sheet1$]')
@@ -0,0 +1,841 @@
<?xml version="1.0" encoding="utf-8"?>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<DataSources>
<DataSource Name="Equa">
<rd:DataSourceID>9c2e09a3-1d5b-4de5-88dd-e22b808708a8</rd:DataSourceID>
<DataSourceReference>Equa</DataSourceReference>
</DataSource>
</DataSources>
<InteractiveHeight>17cm</InteractiveHeight>
<Description>scheda identificazione</Description>
<ReportParameters>
<ReportParameter Name="IdxObj">
<DataType>String</DataType>
<Prompt>IdxObj</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
</ReportParameters>
<rd:DrawGrid>true</rd:DrawGrid>
<InteractiveWidth>24cm</InteractiveWidth>
<rd:GridSpacing>0.25cm</rd:GridSpacing>
<rd:SnapToGrid>true</rd:SnapToGrid>
<RightMargin>0.2cm</RightMargin>
<LeftMargin>0.2cm</LeftMargin>
<BottomMargin>0.2cm</BottomMargin>
<rd:ReportID>b8624b28-ffd9-4fdc-b3f2-daf1efa3341e</rd:ReportID>
<EmbeddedImages>
<EmbeddedImage Name="equa">
<MIMEType>image/jpeg</MIMEType>
<ImageData>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</ImageData>
</EmbeddedImage>
</EmbeddedImages>
<PageWidth>25cm</PageWidth>
<DataSets>
<DataSet Name="Equa">
<Fields>
<Field Name="IdxObj">
<DataField>IdxObj</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Cliente">
<DataField>Cliente</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="DDT">
<DataField>DDT</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="DDT_del">
<DataField>DDT_del</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="DataArrivo">
<DataField>DataArrivo</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="CodProdotto">
<DataField>CodProdotto</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ConsegnaPrevista">
<DataField>ConsegnaPrevista</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="Peso">
<DataField>Peso</DataField>
<rd:TypeName>System.Double</rd:TypeName>
</Field>
<Field Name="FosfManganese">
<DataField>FosfManganese</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Brunitura">
<DataField>Brunitura</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FosfTeflon">
<DataField>FosfTeflon</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Sabbiatura">
<DataField>Sabbiatura</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="F1">
<DataField>F1</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="F2">
<DataField>F2</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FosfZinco">
<DataField>FosfZinco</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Teflon">
<DataField>Teflon</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FosfPreVern">
<DataField>FosfPreVern</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="PzRoto">
<DataField>PzRoto</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Zinchlorex">
<DataField>Zinchlorex</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="PeekVicote">
<DataField>PeekVicote</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="CodCli">
<DataField>CodCli</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>Equa</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>sp_schedaIdent</CommandText>
<QueryParameters>
<QueryParameter Name="@IdxObj">
<Value>=Parameters!IdxObj.Value</Value>
</QueryParameter>
</QueryParameters>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
</DataSet>
</DataSets>
<Author>SteamWare</Author>
<Code />
<Width>24.2cm</Width>
<Body>
<ColumnSpacing>0cm</ColumnSpacing>
<ReportItems>
<List Name="List1">
<Sorting>
<SortBy>
<SortExpression>=Fields!Cliente.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
<DataSetName>Equa</DataSetName>
<ReportItems>
<Textbox Name="textbox14">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>13.5cm</Top>
<Width>5cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>32</ZIndex>
<CanGrow>true</CanGrow>
<Left>9.5cm</Left>
<Height>0.63492cm</Height>
<Value>Fosfatazione pre-verniciatura</Value>
</Textbox>
<Textbox Name="textbox15">
<Top>13.5cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>31</ZIndex>
<CanGrow>true</CanGrow>
<Left>8.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!FosfPreVern.Value)</Value>
</Textbox>
<Textbox Name="textbox12">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12cm</Top>
<Width>3.75cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>30</ZIndex>
<CanGrow>true</CanGrow>
<Left>9.5cm</Left>
<Height>0.63492cm</Height>
<Value>Fosfatazione Zinco</Value>
</Textbox>
<Textbox Name="textbox13">
<Top>12cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>29</ZIndex>
<CanGrow>true</CanGrow>
<Left>8.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!FosfZinco.Value)</Value>
</Textbox>
<Textbox Name="textbox1">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12.75cm</Top>
<Width>4.5cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>28</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.5cm</Left>
<Height>0.63492cm</Height>
<Value>Fosfatazione + TEFLON</Value>
</Textbox>
<Textbox Name="textbox11">
<Top>12.75cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>27</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.5cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!FosfTeflon.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_FinSecco">
<rd:DefaultName>Ciclo_FinSecco</rd:DefaultName>
<Top>12.75cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>26</ZIndex>
<CanGrow>true</CanGrow>
<Left>17.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!PeekVicote.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_Olio">
<rd:DefaultName>Ciclo_Olio</rd:DefaultName>
<Top>12cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>25</ZIndex>
<CanGrow>true</CanGrow>
<Left>17.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!Zinchlorex.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_X2">
<rd:DefaultName>Ciclo_X2</rd:DefaultName>
<Top>11.25cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>24</ZIndex>
<CanGrow>true</CanGrow>
<Left>17.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!PzRoto.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_M">
<rd:DefaultName>Ciclo_M</rd:DefaultName>
<Top>12.75cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>23</ZIndex>
<CanGrow>true</CanGrow>
<Left>8.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!Teflon.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_F2">
<rd:DefaultName>Ciclo_F2</rd:DefaultName>
<Top>11.25cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>22</ZIndex>
<CanGrow>true</CanGrow>
<Left>12cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!F2.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_F1">
<rd:DefaultName>Ciclo_F1</rd:DefaultName>
<Top>11.25cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>21</ZIndex>
<CanGrow>true</CanGrow>
<Left>8.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!F1.Value)</Value>
</Textbox>
<Textbox Name="textbox8">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12.75cm</Top>
<Width>3cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>20</ZIndex>
<CanGrow>true</CanGrow>
<Left>18.5cm</Left>
<Height>0.63492cm</Height>
<Value>PEEK VICOTE</Value>
</Textbox>
<Textbox Name="textbox9">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>19</ZIndex>
<CanGrow>true</CanGrow>
<Left>18.5cm</Left>
<Height>0.63492cm</Height>
<Value>Zinchlorex</Value>
</Textbox>
<Textbox Name="textbox10">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>11.25cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>18</ZIndex>
<CanGrow>true</CanGrow>
<Left>18.5cm</Left>
<Height>0.63492cm</Height>
<Value>Pz Roto</Value>
</Textbox>
<Textbox Name="textbox5">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12.75cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>17</ZIndex>
<CanGrow>true</CanGrow>
<Left>9.5cm</Left>
<Height>0.63492cm</Height>
<Value>TEFLON</Value>
</Textbox>
<Textbox Name="textbox6">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>11.25cm</Top>
<Width>0.75cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>16</ZIndex>
<CanGrow>true</CanGrow>
<Left>12.75cm</Left>
<Height>0.63492cm</Height>
<Value>F2</Value>
</Textbox>
<Textbox Name="textbox7">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>11.25cm</Top>
<Width>0.75cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>15</ZIndex>
<CanGrow>true</CanGrow>
<Left>9.5cm</Left>
<Height>0.63492cm</Height>
<Value>F1</Value>
</Textbox>
<Textbox Name="MercePronta">
<rd:DefaultName>MercePronta</rd:DefaultName>
<Top>13.5cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>14</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.5cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!Sabbiatura.Value)</Value>
</Textbox>
<Textbox Name="textbox4">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>13.5cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>13</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.5cm</Left>
<Height>0.63492cm</Height>
<Value>Sabbiatura</Value>
</Textbox>
<Textbox Name="Brunitura">
<rd:DefaultName>Brunitura</rd:DefaultName>
<Top>12cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>12</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.5cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!Brunitura.Value)</Value>
</Textbox>
<Textbox Name="textbox3">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>11</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.5cm</Left>
<Height>0.63492cm</Height>
<Value>Brunitura</Value>
</Textbox>
<Textbox Name="textbox2">
<rd:DefaultName>textbox2</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>11.25cm</Top>
<Width>4.5cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>10</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.5cm</Left>
<Height>0.63492cm</Height>
<Value>Fosfatazione Manganese</Value>
</Textbox>
<Textbox Name="Fosfatazione">
<rd:DefaultName>Fosfatazione</rd:DefaultName>
<Top>11.25cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>9</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.5cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!FosfManganese.Value)</Value>
</Textbox>
<Textbox Name="Peso">
<rd:DefaultName>Peso</rd:DefaultName>
<Top>7cm</Top>
<Width>5cm</Width>
<Style>
<FontSize>26pt</FontSize>
<FontWeight>700</FontWeight>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>8</ZIndex>
<CanGrow>true</CanGrow>
<Left>17.25cm</Left>
<Height>1.25cm</Height>
<Value>=First(Fields!Peso.Value)</Value>
</Textbox>
<Textbox Name="ConsegnaPrevista_1">
<rd:DefaultName>ConsegnaPrevista_1</rd:DefaultName>
<Top>9cm</Top>
<Width>15.25cm</Width>
<Style>
<FontSize>18pt</FontSize>
<FontWeight>700</FontWeight>
<Format>dddd dd/MM/yy HH:mm</Format>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>7</ZIndex>
<CanGrow>true</CanGrow>
<Left>6.75cm</Left>
<Height>1cm</Height>
<Value>=First(Fields!ConsegnaPrevista.Value)</Value>
</Textbox>
<Textbox Name="CodProdotto">
<rd:DefaultName>CodProdotto</rd:DefaultName>
<Top>7.25cm</Top>
<Width>9.25cm</Width>
<Style>
<BackgroundColor>White</BackgroundColor>
<BorderColor>
<Default>LightGrey</Default>
</BorderColor>
<FontSize>18pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>6</ZIndex>
<CanGrow>true</CanGrow>
<Left>5cm</Left>
<Height>1cm</Height>
<Value>=Fields!CodProdotto.Value</Value>
</Textbox>
<Textbox Name="textbox18">
<Top>5.75cm</Top>
<Style>
<FontFamily>Arial Narrow</FontFamily>
<FontSize>26pt</FontSize>
<FontWeight>700</FontWeight>
<Format>dd/MM/yy HH:mm</Format>
<TextAlign>Right</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>5</ZIndex>
<CanGrow>true</CanGrow>
<Left>18.25cm</Left>
<Height>1.25cm</Height>
<Value>=First(Fields!DataArrivo.Value)</Value>
</Textbox>
<Textbox Name="textbox19">
<Top>5.75cm</Top>
<Width>5.75cm</Width>
<Style>
<FontSize>26pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>4</ZIndex>
<CanGrow>true</CanGrow>
<Left>3.75cm</Left>
<Height>1.25cm</Height>
<Value>=First(Fields!DDT.Value)</Value>
</Textbox>
<Textbox Name="Expr1_1">
<rd:DefaultName>Expr1_1</rd:DefaultName>
<Top>15.25cm</Top>
<Width>4cm</Width>
<Style>
<FontSize>7pt</FontSize>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>3</ZIndex>
<CanGrow>true</CanGrow>
<Left>19.75cm</Left>
<Height>0.4cm</Height>
<Value>=First(Fields!IdxObj.Value)</Value>
</Textbox>
<Textbox Name="Expr1">
<rd:DefaultName>Expr1</rd:DefaultName>
<Top>15cm</Top>
<Width>10.00991cm</Width>
<Style>
<FontFamily>Free 3 of 9 Extended</FontFamily>
<FontSize>38pt</FontSize>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>2</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.25cm</Left>
<Value>="*"&amp;(First(Fields!IdxObj.Value))&amp;"*"</Value>
</Textbox>
<Textbox Name="textbox20">
<Top>5.75cm</Top>
<Width>5cm</Width>
<Style>
<FontFamily>Arial Narrow</FontFamily>
<FontSize>26pt</FontSize>
<FontWeight>700</FontWeight>
<Format>dd/MM/yy</Format>
<TextAlign>Left</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<Left>11.5cm</Left>
<Height>1.25cm</Height>
<Value>=Fields!DDT_del.Value</Value>
</Textbox>
<Textbox Name="Cliente">
<rd:DefaultName>Cliente</rd:DefaultName>
<Top>3.25cm</Top>
<Width>20cm</Width>
<Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>40pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<Left>3.75cm</Left>
<Height>1.75cm</Height>
<Value>=Fields!Cliente.Value</Value>
</Textbox>
</ReportItems>
<Width>24.00661cm</Width>
<Style>
<Color>SlateGray</Color>
<FontFamily>Tahoma</FontFamily>
<FontSize>14pt</FontSize>
</Style>
<Grouping Name="list1_Cliente">
<GroupExpressions>
<GroupExpression>=Fields!Cliente.Value</GroupExpression>
</GroupExpressions>
<PageBreakAtEnd>true</PageBreakAtEnd>
</Grouping>
<Height>16cm</Height>
</List>
</ReportItems>
<Height>17cm</Height>
</Body>
<Language>it-IT</Language>
<TopMargin>0.2cm</TopMargin>
<PageHeight>17.6cm</PageHeight>
</Report>
+115
View File
@@ -0,0 +1,115 @@
<?xml version="1.0" encoding="utf-8"?>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<DataSources>
<DataSource Name="Equa">
<rd:DataSourceID>48913ed1-58e3-42c7-8f25-ca3c5e5e1b2b</rd:DataSourceID>
<DataSourceReference>Equa</DataSourceReference>
</DataSource>
</DataSources>
<InteractiveHeight>1.7cm</InteractiveHeight>
<Description>Etichetta barcode</Description>
<ReportParameters>
<ReportParameter Name="IdxObj">
<DataType>String</DataType>
<Prompt>IdxObj</Prompt>
</ReportParameter>
</ReportParameters>
<rd:DrawGrid>true</rd:DrawGrid>
<InteractiveWidth>5.4cm</InteractiveWidth>
<rd:GridSpacing>0.25cm</rd:GridSpacing>
<rd:SnapToGrid>true</rd:SnapToGrid>
<rd:ReportID>008d5696-3507-4a77-83be-8177caea9601</rd:ReportID>
<EmbeddedImages>
<EmbeddedImage Name="equa">
<MIMEType>image/jpeg</MIMEType>
<ImageData>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</ImageData>
</EmbeddedImage>
</EmbeddedImages>
<PageWidth>5.4cm</PageWidth>
<DataSets>
<DataSet Name="Equa">
<Fields>
<Field Name="IdxObj">
<DataField>IdxObj</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="DataCreaz">
<DataField>DataCreaz</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>Equa</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>sp_ddt</CommandText>
<QueryParameters>
<QueryParameter Name="@IdxObj">
<Value>=Parameters!IdxObj.Value</Value>
</QueryParameter>
</QueryParameters>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
</DataSet>
</DataSets>
<Author>SteamWare</Author>
<Code />
<Width>5.4cm</Width>
<Body>
<ColumnSpacing>0cm</ColumnSpacing>
<ReportItems>
<Textbox Name="Expr1">
<rd:DefaultName>Expr1</rd:DefaultName>
<Style>
<FontFamily>Free 3 of 9 Extended</FontFamily>
<FontSize>32pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>1</ZIndex>
<Height>1cm</Height>
<Value>="*"&amp;(First(Fields!IdxObj.Value))&amp;"*"</Value>
</Textbox>
<Textbox Name="Expr1_1">
<rd:DefaultName>Expr1_1</rd:DefaultName>
<Top>1cm</Top>
<Width>3.25cm</Width>
<Style>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<CanGrow>true</CanGrow>
<Left>1cm</Left>
<Value>=First(Fields!IdxObj.Value)</Value>
</Textbox>
</ReportItems>
<Height>1.63492cm</Height>
</Body>
<Language>en-US</Language>
<PageHeight>1.7cm</PageHeight>
</Report>
@@ -0,0 +1,841 @@
<?xml version="1.0" encoding="utf-8"?>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<DataSources>
<DataSource Name="Equa">
<rd:DataSourceID>9c2e09a3-1d5b-4de5-88dd-e22b808708a8</rd:DataSourceID>
<DataSourceReference>Equa</DataSourceReference>
</DataSource>
</DataSources>
<InteractiveHeight>17cm</InteractiveHeight>
<Description>scheda identificazione</Description>
<ReportParameters>
<ReportParameter Name="IdxObj">
<DataType>String</DataType>
<Prompt>IdxObj</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
</ReportParameters>
<rd:DrawGrid>true</rd:DrawGrid>
<InteractiveWidth>24cm</InteractiveWidth>
<rd:GridSpacing>0.25cm</rd:GridSpacing>
<rd:SnapToGrid>true</rd:SnapToGrid>
<RightMargin>0.2cm</RightMargin>
<LeftMargin>0.2cm</LeftMargin>
<BottomMargin>0.2cm</BottomMargin>
<rd:ReportID>b8624b28-ffd9-4fdc-b3f2-daf1efa3341e</rd:ReportID>
<EmbeddedImages>
<EmbeddedImage Name="equa">
<MIMEType>image/jpeg</MIMEType>
<ImageData>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</ImageData>
</EmbeddedImage>
</EmbeddedImages>
<PageWidth>25cm</PageWidth>
<DataSets>
<DataSet Name="Equa">
<Fields>
<Field Name="IdxObj">
<DataField>IdxObj</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Cliente">
<DataField>Cliente</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="DDT">
<DataField>DDT</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="DDT_del">
<DataField>DDT_del</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="DataArrivo">
<DataField>DataArrivo</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="CodProdotto">
<DataField>CodProdotto</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ConsegnaPrevista">
<DataField>ConsegnaPrevista</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="Peso">
<DataField>Peso</DataField>
<rd:TypeName>System.Double</rd:TypeName>
</Field>
<Field Name="FosfManganese">
<DataField>FosfManganese</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Brunitura">
<DataField>Brunitura</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FosfTeflon">
<DataField>FosfTeflon</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Sabbiatura">
<DataField>Sabbiatura</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="F1">
<DataField>F1</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="F2">
<DataField>F2</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FosfZinco">
<DataField>FosfZinco</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Teflon">
<DataField>Teflon</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FosfPreVern">
<DataField>FosfPreVern</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="PzRoto">
<DataField>PzRoto</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Zinchlorex">
<DataField>Zinchlorex</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="PeekVicote">
<DataField>PeekVicote</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="CodCli">
<DataField>CodCli</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>Equa</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>sp_schedaIdent</CommandText>
<QueryParameters>
<QueryParameter Name="@IdxObj">
<Value>=Parameters!IdxObj.Value</Value>
</QueryParameter>
</QueryParameters>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
</DataSet>
</DataSets>
<Author>SteamWare</Author>
<Code />
<Width>24.2cm</Width>
<Body>
<ColumnSpacing>0cm</ColumnSpacing>
<ReportItems>
<List Name="List1">
<Sorting>
<SortBy>
<SortExpression>=Fields!Cliente.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
<DataSetName>Equa</DataSetName>
<ReportItems>
<Textbox Name="textbox14">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>13.5cm</Top>
<Width>5cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>32</ZIndex>
<CanGrow>true</CanGrow>
<Left>9.5cm</Left>
<Height>0.63492cm</Height>
<Value>Fosfatazione pre-verniciatura</Value>
</Textbox>
<Textbox Name="textbox15">
<Top>13.5cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>31</ZIndex>
<CanGrow>true</CanGrow>
<Left>8.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!FosfPreVern.Value)</Value>
</Textbox>
<Textbox Name="textbox12">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12cm</Top>
<Width>3.75cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>30</ZIndex>
<CanGrow>true</CanGrow>
<Left>9.5cm</Left>
<Height>0.63492cm</Height>
<Value>Fosfatazione Zinco</Value>
</Textbox>
<Textbox Name="textbox13">
<Top>12cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>29</ZIndex>
<CanGrow>true</CanGrow>
<Left>8.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!FosfZinco.Value)</Value>
</Textbox>
<Textbox Name="textbox1">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12.75cm</Top>
<Width>4.5cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>28</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.5cm</Left>
<Height>0.63492cm</Height>
<Value>Fosfatazione + TEFLON</Value>
</Textbox>
<Textbox Name="textbox11">
<Top>12.75cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>27</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.5cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!FosfTeflon.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_FinSecco">
<rd:DefaultName>Ciclo_FinSecco</rd:DefaultName>
<Top>12.75cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>26</ZIndex>
<CanGrow>true</CanGrow>
<Left>17.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!PeekVicote.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_Olio">
<rd:DefaultName>Ciclo_Olio</rd:DefaultName>
<Top>12cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>25</ZIndex>
<CanGrow>true</CanGrow>
<Left>17.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!Zinchlorex.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_X2">
<rd:DefaultName>Ciclo_X2</rd:DefaultName>
<Top>11.25cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>24</ZIndex>
<CanGrow>true</CanGrow>
<Left>17.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!PzRoto.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_M">
<rd:DefaultName>Ciclo_M</rd:DefaultName>
<Top>12.75cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>23</ZIndex>
<CanGrow>true</CanGrow>
<Left>8.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!Teflon.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_F2">
<rd:DefaultName>Ciclo_F2</rd:DefaultName>
<Top>11.25cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>22</ZIndex>
<CanGrow>true</CanGrow>
<Left>12cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!F2.Value)</Value>
</Textbox>
<Textbox Name="Ciclo_F1">
<rd:DefaultName>Ciclo_F1</rd:DefaultName>
<Top>11.25cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>21</ZIndex>
<CanGrow>true</CanGrow>
<Left>8.75cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!F1.Value)</Value>
</Textbox>
<Textbox Name="textbox8">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12.75cm</Top>
<Width>3cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>20</ZIndex>
<CanGrow>true</CanGrow>
<Left>18.5cm</Left>
<Height>0.63492cm</Height>
<Value>PEEK VICOTE</Value>
</Textbox>
<Textbox Name="textbox9">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>19</ZIndex>
<CanGrow>true</CanGrow>
<Left>18.5cm</Left>
<Height>0.63492cm</Height>
<Value>Zinchlorex</Value>
</Textbox>
<Textbox Name="textbox10">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>11.25cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>18</ZIndex>
<CanGrow>true</CanGrow>
<Left>18.5cm</Left>
<Height>0.63492cm</Height>
<Value>Pz Roto</Value>
</Textbox>
<Textbox Name="textbox5">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12.75cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>17</ZIndex>
<CanGrow>true</CanGrow>
<Left>9.5cm</Left>
<Height>0.63492cm</Height>
<Value>TEFLON</Value>
</Textbox>
<Textbox Name="textbox6">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>11.25cm</Top>
<Width>0.75cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>16</ZIndex>
<CanGrow>true</CanGrow>
<Left>12.75cm</Left>
<Height>0.63492cm</Height>
<Value>F2</Value>
</Textbox>
<Textbox Name="textbox7">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>11.25cm</Top>
<Width>0.75cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>15</ZIndex>
<CanGrow>true</CanGrow>
<Left>9.5cm</Left>
<Height>0.63492cm</Height>
<Value>F1</Value>
</Textbox>
<Textbox Name="MercePronta">
<rd:DefaultName>MercePronta</rd:DefaultName>
<Top>13.5cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>14</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.5cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!Sabbiatura.Value)</Value>
</Textbox>
<Textbox Name="textbox4">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>13.5cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>13</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.5cm</Left>
<Height>0.63492cm</Height>
<Value>Sabbiatura</Value>
</Textbox>
<Textbox Name="Brunitura">
<rd:DefaultName>Brunitura</rd:DefaultName>
<Top>12cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>12</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.5cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!Brunitura.Value)</Value>
</Textbox>
<Textbox Name="textbox3">
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>12cm</Top>
<Width>2.53968cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>11</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.5cm</Left>
<Height>0.63492cm</Height>
<Value>Brunitura</Value>
</Textbox>
<Textbox Name="textbox2">
<rd:DefaultName>textbox2</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Top>11.25cm</Top>
<Width>4.5cm</Width>
<Style>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>10</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.5cm</Left>
<Height>0.63492cm</Height>
<Value>Fosfatazione Manganese</Value>
</Textbox>
<Textbox Name="Fosfatazione">
<rd:DefaultName>Fosfatazione</rd:DefaultName>
<Top>11.25cm</Top>
<Width>0.5cm</Width>
<Style>
<FontSize>14pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>9</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.5cm</Left>
<Height>0.63492cm</Height>
<Value>=(Fields!FosfManganese.Value)</Value>
</Textbox>
<Textbox Name="Peso">
<rd:DefaultName>Peso</rd:DefaultName>
<Top>7cm</Top>
<Width>5cm</Width>
<Style>
<FontSize>26pt</FontSize>
<FontWeight>700</FontWeight>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>8</ZIndex>
<CanGrow>true</CanGrow>
<Left>17.25cm</Left>
<Height>1.25cm</Height>
<Value>=First(Fields!Peso.Value)</Value>
</Textbox>
<Textbox Name="ConsegnaPrevista_1">
<rd:DefaultName>ConsegnaPrevista_1</rd:DefaultName>
<Top>9cm</Top>
<Width>15.25cm</Width>
<Style>
<FontSize>18pt</FontSize>
<FontWeight>700</FontWeight>
<Format>dddd dd/MM/yy HH:mm</Format>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>7</ZIndex>
<CanGrow>true</CanGrow>
<Left>6.75cm</Left>
<Height>1cm</Height>
<Value>=First(Fields!ConsegnaPrevista.Value)</Value>
</Textbox>
<Textbox Name="CodProdotto">
<rd:DefaultName>CodProdotto</rd:DefaultName>
<Top>7.25cm</Top>
<Width>9.25cm</Width>
<Style>
<BackgroundColor>White</BackgroundColor>
<BorderColor>
<Default>LightGrey</Default>
</BorderColor>
<FontSize>18pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>6</ZIndex>
<CanGrow>true</CanGrow>
<Left>5cm</Left>
<Height>1cm</Height>
<Value>=Fields!CodProdotto.Value</Value>
</Textbox>
<Textbox Name="textbox18">
<Top>5.75cm</Top>
<Style>
<FontFamily>Arial Narrow</FontFamily>
<FontSize>26pt</FontSize>
<FontWeight>700</FontWeight>
<Format>dd/MM/yy HH:mm</Format>
<TextAlign>Right</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>5</ZIndex>
<CanGrow>true</CanGrow>
<Left>18.25cm</Left>
<Height>1.25cm</Height>
<Value>=First(Fields!DataArrivo.Value)</Value>
</Textbox>
<Textbox Name="textbox19">
<Top>5.75cm</Top>
<Width>5.75cm</Width>
<Style>
<FontSize>26pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>4</ZIndex>
<CanGrow>true</CanGrow>
<Left>3.75cm</Left>
<Height>1.25cm</Height>
<Value>=First(Fields!DDT.Value)</Value>
</Textbox>
<Textbox Name="Expr1_1">
<rd:DefaultName>Expr1_1</rd:DefaultName>
<Top>15.25cm</Top>
<Width>4cm</Width>
<Style>
<FontSize>7pt</FontSize>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>3</ZIndex>
<CanGrow>true</CanGrow>
<Left>19.75cm</Left>
<Height>0.4cm</Height>
<Value>=First(Fields!IdxObj.Value)</Value>
</Textbox>
<Textbox Name="Expr1">
<rd:DefaultName>Expr1</rd:DefaultName>
<Top>15cm</Top>
<Width>10.00991cm</Width>
<Style>
<FontFamily>Free 3 of 9 Extended</FontFamily>
<FontSize>38pt</FontSize>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>2</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.25cm</Left>
<Value>="*"&amp;(First(Fields!IdxObj.Value))&amp;"*"</Value>
</Textbox>
<Textbox Name="textbox20">
<Top>5.75cm</Top>
<Width>5cm</Width>
<Style>
<FontFamily>Arial Narrow</FontFamily>
<FontSize>26pt</FontSize>
<FontWeight>700</FontWeight>
<Format>dd/MM/yy</Format>
<TextAlign>Left</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<Left>11.5cm</Left>
<Height>1.25cm</Height>
<Value>=Fields!DDT_del.Value</Value>
</Textbox>
<Textbox Name="Cliente">
<rd:DefaultName>Cliente</rd:DefaultName>
<Top>3.25cm</Top>
<Width>20cm</Width>
<Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>40pt</FontSize>
<FontWeight>700</FontWeight>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<Left>3.75cm</Left>
<Height>1.75cm</Height>
<Value>=Fields!Cliente.Value</Value>
</Textbox>
</ReportItems>
<Width>24.00661cm</Width>
<Style>
<Color>SlateGray</Color>
<FontFamily>Tahoma</FontFamily>
<FontSize>14pt</FontSize>
</Style>
<Grouping Name="list1_Cliente">
<GroupExpressions>
<GroupExpression>=Fields!Cliente.Value</GroupExpression>
</GroupExpressions>
<PageBreakAtEnd>true</PageBreakAtEnd>
</Grouping>
<Height>16cm</Height>
</List>
</ReportItems>
<Height>17cm</Height>
</Body>
<Language>it-IT</Language>
<TopMargin>0.2cm</TopMargin>
<PageHeight>17.6cm</PageHeight>
</Report>
File diff suppressed because it is too large Load Diff
+162
View File
@@ -0,0 +1,162 @@
<?xml version="1.0"?>
<!-- FILE DI CONFIGURAZIONE PER APPLICAZIONI STEAMWARE BREMBO IN LOCALE -->
<!--
Note: As an alternative to hand editing this file you can use the
web admin tool to configure settings for your application. Use
the Website->Asp.Net Configuration option in Visual Studio.
A full list of settings and comments can be found in
machine.config.comments usually located in
\Windows\Microsoft.Net\Framework\v2.x\Config
-->
<configuration>
<configSections>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere"/>
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/></sectionGroup>
</sectionGroup>
</sectionGroup>
<section name="microsoft.web.services2" type="Microsoft.Web.Services2.Configuration.WebServicesConfiguration, Microsoft.Web.Services2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</configSections>
<system.web>
<globalization uiCulture="auto" enableClientBasedCulture="true"/>
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add tagPrefix="asp" namespace="Microsoft.Web.Preview.UI" assembly="Microsoft.Web.Preview"/>
<add tagPrefix="asp" namespace="Microsoft.Web.Preview.UI.Controls" assembly="Microsoft.Web.Preview"/>
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></controls>
</pages>
<compilation debug="true">
<assemblies>
<add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="Microsoft.Web.Services2, Version=2.0.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Configuration.Install, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="Microsoft.ReportViewer.WinForms, Version=8.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions.Design, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></assemblies>
<buildProviders>
<add extension="*.asbx" type="Microsoft.Web.Preview.Services.BridgeBuildProvider"/>
</buildProviders>
</compilation>
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
<add verb="GET,HEAD,POST" path="*.asbx" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
</httpHandlers>
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</httpModules>
<customErrors mode="Off"/>
<!--<customErrors mode="RemoteOnly" defaultRedirect="unauthorized.aspx"/>-->
<httpRuntime maxRequestLength="102400"/>
<!-- qui sopra configurato x gestire allegati fino a 100 mb...
<httpRuntime
maxRequestLength="102400"
executionTimeout="1200"
useFullyQualifiedRedirectUrl="false"
minFreeThreads="8"
minLocalRequestFreeThreads="4"
appRequestQueueLimit="100" />
-->
</system.web>
<appSettings>
<add key="CodModulo" value="XPS"/>
<add key="dominio" value="VOSTRO410"/>
<add key="_navMaxChar" value="20"/>
<add key="intUpdatePagina_ms" value="120000"/>
<add key="_righeDataGrid" value="30"/>
<add key="_righeDataGridAnagr" value="20"/>
<add key="_righeDataGridLong" value="20"/>
<add key="_righeDataGridMed" value="15"/>
<add key="_righeDataGridShort" value="10"/>
<add key="_fromEmail" value="xps@steamware.net"/>
<add key="_logLevel" value="5"/>
<add key="_logMaxMb" value="30"/>
<add key="_allowForceUser" value="true"/>
<add key="_safePages" value="chLang.aspx#jumper.aspx#unauthorized.aspx#allegati.aspx#forceUser.aspx#login.aspx#test.aspx"/>
<add key="_commonPages" value="menu.aspx"/>
<add key="_titoloPagina" value="XPS"/>
<add key="titleApp" value="XPS_titleApp"/>
<add key="welcomeApp" value="XPS_welcomeApp"/>
<add key="appName" value="XPS"/>
<add key="mainRev" value="0.9"/>
<add key="copyRight" value="SteamWare © 2008"/>
<add key="defaultApp" value="XPS_Appl"/>
<add key="defaultTitle" value="XPS_ShortWelcome"/>
<add key="defaultBody" value="XPS_LongWelcome"/>
<add key="_treeMaxChar" value="45"/>
<add key="_showAllTree" value="false"/>
<add key="_jumpStart" value="10"/>
<add key="defDayLeadTime" value="3"/>
<add key="_adminEmail" value="info@steamware.net"/>
<add key="_logDir" value="./logs/"/>
<add key="_smtpCli" value="10.74.82.217\SQL2008R2"/>
<add key="PermessiConnectionString" value="Data Source=10.74.82.217\SQL2008R2;Initial Catalog=Equa_XPS;Persist Security Info=True;User id=sa;Password=keyhammer"/>
<add key="UtenteCdcConnectionString" value="Data Source=10.74.82.217\SQL2008R2;Initial Catalog=Equa_Anagrafica;Persist Security Info=True;User id=sa;Password=keyhammer"/>
<add key="VocabolarioConnectionString" value="Data Source=10.74.82.217\SQL2008R2;Initial Catalog=Equa_Vocabolario;Persist Security Info=True;User id=sa;Password=keyhammer"/>
<!-- Setup link a reporting -->
<add key="urlReporting" value="http://{0}/ReportServer?/{1}/{2}&amp;rs:Command=Render&amp;rc:Parameters=false&amp;rc:Toolbar=true&amp;IdxObj={3}{4}"/>
<!-- NB: "/" == "%2f" -->
<add key="reportingServerAddress" value="10.74.82.217\SQL2008R2"/>
<add key="reportDir" value="ReportEqua"/>
<add key="reportName_mod" value="ReportSchedaIdentificazione"/>
<add key="reportName_lbl" value="LabelEqua"/>
<add key="reportOpzPdf" value="&amp;rs:Format=PDF"/>
<add key="printerSchedaIdent" value="PDFCreator"/>
<add key="printerBarcode" value="PDFCreator"/>
</appSettings>
<connectionStrings>
<add name="SteamWare_XPSConnectionString" connectionString="Data Source=10.74.82.217\SQL2008R2;Initial Catalog=Equa_XPS;Persist Security Info=True;User id=sa;Password=keyhammer" providerName="System.Data.SqlClient"/>
<add name="SteamWare_XPSConnectionString1" connectionString="Data Source=10.74.82.217\SQL2008R2;Initial Catalog=Equa_XPS;Persist Security Info=True;User ID=sa;Password=keyhammer" providerName="System.Data.SqlClient"/>
<add name="si_dt30ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\si_dt30.mdb" providerName="System.Data.OleDb"/>
</connectionStrings>
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules>
<remove name="ScriptModule"/><add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</modules>
<handlers>
<remove name="ScriptHandlerFactory"/>
<remove name="ScriptHandlerFactoryAppServices"/>
<remove name="ScriptResource"/><remove name="WebServiceHandlerFactory-Integrated"/>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ASBXHandler" verb="GET,HEAD,POST" path="*.asbx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</handlers>
</system.webServer>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.VisualStudio.Enterprise.ASPNetHelper" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<codeBase version="8.0.0.0" href="file:///C:/Program%20Files/Microsoft%20Visual%20Studio%208/Common7/IDE/PrivateAssemblies/Microsoft.VisualStudio.Enterprise.ASPNetHelper.DLL"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/></dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/></dependentAssembly></assemblyBinding>
</runtime>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="WarnAsError" value="false"/></compiler>
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="OptionInfer" value="true"/>
<providerOption name="WarnAsError" value="false"/></compiler></compilers></system.codedom></configuration>
@@ -0,0 +1,73 @@
<%@ Master Language="C#" AutoEventWireup="true" Inherits="AjaxSearch" Codebehind="AjaxSearch.master.cs" %>
<%@ Register Src="~/WebUserControls/mod_menuTop.ascx" TagName="mod_menuTop" TagPrefix="uc1" %>
<%@ Register Src="~/WebUserControls/mod_menuSx.ascx" TagName="mod_menuSx" TagPrefix="uc2" %>
<%@ Register Src="~/WebUserControls/mod_pageTitleAndSearch.ascx" TagName="mod_pageTitleAndSearch" TagPrefix="uc3" %>
<%@ Register Src="~/WebUserControls/mod_ricercaGenerica.ascx" TagName="mod_ricercaGenerica" TagPrefix="uc4" %>
<%@ Register Src="~/WebUserControls/mod_menuBottom.ascx" TagName="mod_menuBottom" TagPrefix="uc5" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<link href="~/Style.css" rel="stylesheet" type="text/css" />
</head>
<body class="body">
<form id="form1" runat="server">
<asp:ToolkitScriptManager ID="sm" runat="server" EnablePartialRendering="true" EnableScriptGlobalization="true"
EnableScriptLocalization="true">
</asp:ToolkitScriptManager>
<table class="formatTableGeneral" id="tblFormat" cellspacing="0" cellpadding="0">
<tr>
<td class="topMenu" colspan="2">
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<uc1:mod_menuTop ID="Mod_menuTop1" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</td>
</tr>
<tr>
<td class="menuSx">
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Always" RenderMode="Inline">
<ContentTemplate>
<uc2:mod_menuSx ID="Mod_menuSx1" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td class="bodyMain">
<div>
<asp:UpdatePanel ID="updPanelPagina" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<table class="tableContenuto" cellpadding="0" cellspacing="0">
<tr class="topContrDx">
<td style="width: 25%;" valign="baseline">
<uc3:mod_pageTitleAndSearch ID="Mod_pageTitleAndSearch1" runat="server" />
</td>
<td style="width: 75%; text-align: left;">
<uc4:mod_ricercaGenerica ID="Mod_ricercaGenerica1" runat="server" />
</td>
</tr>
<tr>
<td colspan="2" class="contrRiq">
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</td>
</tr>
<tr>
<td colspan="2" class="bottomWrite">
<uc5:mod_menuBottom ID="Mod_menuBottom1" runat="server" />
</td>
</tr>
</table>
</form>
</body>
</html>
@@ -0,0 +1,48 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class AjaxSearch : System.Web.UI.MasterPage
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Page.Title = SteamWare.memLayer.ML.confReadString("_titoloPagina");
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
Mod_menuTop1.eh_toggleMenuSx += new EventHandler(Mod_menuTop1_eh_toggleMenuSx);
Mod_menuTop1.eh_reqUpdateMenu += new EventHandler(Mod_menuTop1_eh_reqUpdateMenu);
}
void Mod_menuTop1_eh_reqUpdateMenu(object sender, EventArgs e)
{
// chiamo update del menu sx...
Mod_menuSx1.forzaUpdateMenu();
}
void Mod_menuTop1_eh_toggleMenuSx(object sender, EventArgs e)
{
// cambio stato visualizzaizone menù laterale...
Mod_menuSx1.Visible = !Mod_menuSx1.Visible;
}
protected override void OnUnload(EventArgs e)
{
base.OnUnload(e);
// svuoto tutti gli event handler inseriti...
Mod_menuTop1.eh_toggleMenuSx -= new EventHandler(Mod_menuTop1_eh_toggleMenuSx);
Mod_menuTop1.eh_reqUpdateMenu -= new EventHandler(Mod_menuTop1_eh_reqUpdateMenu);
}
}
+122
View File
@@ -0,0 +1,122 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AjaxSearch {
/// <summary>
/// Head1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlHead Head1;
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// sm control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.ToolkitScriptManager sm;
/// <summary>
/// UpdatePanel1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel UpdatePanel1;
/// <summary>
/// Mod_menuTop1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuTop Mod_menuTop1;
/// <summary>
/// UpdatePanel2 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel UpdatePanel2;
/// <summary>
/// Mod_menuSx1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuSx Mod_menuSx1;
/// <summary>
/// updPanelPagina control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel updPanelPagina;
/// <summary>
/// Mod_pageTitleAndSearch1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_pageTitleAndSearch Mod_pageTitleAndSearch1;
/// <summary>
/// Mod_ricercaGenerica1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_ricercaGenerica Mod_ricercaGenerica1;
/// <summary>
/// ContentPlaceHolder1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder ContentPlaceHolder1;
/// <summary>
/// Mod_menuBottom1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuBottom Mod_menuBottom1;
}
@@ -0,0 +1,35 @@
<%@ Master Language="C#" AutoEventWireup="true"
Inherits="AjaxSimple" Codebehind="AjaxSimple.master.cs" %>
<%@ Register Src="~/WebUserControls/mod_menuBottom.ascx" TagName="mod_menuBottom" TagPrefix="uc1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Simplepage</title>
<link href="~/Style.css" rel="stylesheet" type="text/css" />
</head>
<body class="body" onunload="mostraClessidra();">
<form id="form1" runat="server">
<asp:ToolkitScriptManager ID="sm" runat="server" EnablePartialRendering="true">
</asp:ToolkitScriptManager>
<div>
<table class="formatTableGeneral" id="tblFormat" cellspacing="0" cellpadding="0">
<tr>
<td class="bodyMain">
<div>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</td>
</tr>
<tr>
<td class="bottomWrite">
<uc1:mod_menuBottom ID="Mod_menuBottom1" runat="server" />
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
@@ -0,0 +1,20 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
public partial class AjaxSimple : System.Web.UI.MasterPage
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Page.Title = SteamWare.memLayer.ML.confReadString("_titoloPagina");
}
}
+50
View File
@@ -0,0 +1,50 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AjaxSimple {
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// sm control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.ToolkitScriptManager sm;
/// <summary>
/// ContentPlaceHolder1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder ContentPlaceHolder1;
/// <summary>
/// Mod_menuBottom1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuBottom Mod_menuBottom1;
}
@@ -0,0 +1,35 @@
<%@ Master Language="C#" AutoEventWireup="true"
Inherits="AjaxSimpleUpload" Codebehind="AjaxSimpleUpload.master.cs" %>
<%@ Register Src="~/WebUserControls/mod_menuBottom.ascx" TagName="mod_menuBottom" TagPrefix="uc1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>SimplePage</title>
<link href="~/Style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server" method="post" enctype="multipart/form-data">
<asp:ToolkitScriptManager ID="sm" runat="server" EnablePartialRendering="true">
</asp:ToolkitScriptManager>
<div>
<table class="formatTableGeneral" id="tblFormat" cellspacing="0" cellpadding="0">
<tr>
<td class="bodyMain">
<div>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</td>
</tr>
<tr>
<td class="bottomWrite">
<uc1:mod_menuBottom ID="Mod_menuBottom1" runat="server" />
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
@@ -0,0 +1,20 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
public partial class AjaxSimpleUpload : System.Web.UI.MasterPage
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Page.Title = SteamWare.memLayer.ML.confReadString("_titoloPagina");
}
}
@@ -0,0 +1,59 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AjaxSimpleUpload {
/// <summary>
/// Head1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlHead Head1;
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// sm control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.ToolkitScriptManager sm;
/// <summary>
/// ContentPlaceHolder1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder ContentPlaceHolder1;
/// <summary>
/// Mod_menuBottom1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuBottom Mod_menuBottom1;
}
@@ -0,0 +1,74 @@
<%@ Master Language="C#" AutoEventWireup="true"
Inherits="AjaxTitle" Codebehind="AjaxTitle.master.cs" %>
<%@ Register Src="~/WebUserControls/mod_menuTop.ascx" TagName="mod_menuTop" TagPrefix="uc1" %>
<%@ Register Src="~/WebUserControls/mod_menuSx.ascx" TagName="mod_menuSx" TagPrefix="uc2" %>
<%@ Register Src="~/WebUserControls/mod_pageTitleAndSearch.ascx" TagName="mod_pageTitleAndSearch" TagPrefix="uc3" %>
<%@ Register Src="~/WebUserControls/mod_ricercaGenerica.ascx" TagName="mod_ricercaGenerica" TagPrefix="uc4" %>
<%@ Register Src="~/WebUserControls/mod_menuBottom.ascx" TagName="mod_menuBottom" TagPrefix="uc5" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="~/Style.css" rel="stylesheet" type="text/css" />
</head>
<body class="body">
<form id="form1" runat="server">
<asp:ToolkitScriptManager ID="sm" runat="server" EnablePartialRendering="true" EnableScriptGlobalization="true"
EnableScriptLocalization="true">
</asp:ToolkitScriptManager>
<table class="formatTableGeneral" id="tblFormat" cellspacing="0" cellpadding="0">
<tr>
<td class="topMenu" colspan="2">
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<uc1:mod_menuTop ID="Mod_menuTop1" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</td>
</tr>
<tr>
<td class="menuSx">
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Always" RenderMode="Inline">
<ContentTemplate>
<uc2:mod_menuSx ID="Mod_menuSx1" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td class="bodyMain">
<div>
<asp:UpdatePanel ID="updPanelPagina" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<table class="tableContenuto" cellpadding="0" cellspacing="0">
<tr class="topContrDx">
<td style="width: 25%;" valign="baseline">
<uc3:mod_pageTitleAndSearch ID="Mod_pageTitleAndSearch1" runat="server" />
</td>
<td style="width: 75%; text-align: left;">
&nbsp;
</td>
</tr>
<tr>
<td colspan="2" class="contrRiq">
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</td>
</tr>
<tr>
<td colspan="2" class="bottomWrite">
<uc5:mod_menuBottom ID="Mod_menuBottom1" runat="server" />
</td>
</tr>
</table>
</form>
</body>
</html>
@@ -0,0 +1,49 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
public partial class AjaxTitle : System.Web.UI.MasterPage
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Page.Title = SteamWare.memLayer.ML.confReadString("_titoloPagina");
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
Mod_menuTop1.eh_toggleMenuSx += new EventHandler(Mod_menuTop1_eh_toggleMenuSx);
Mod_menuTop1.eh_reqUpdateMenu += new EventHandler(Mod_menuTop1_eh_reqUpdateMenu);
}
void Mod_menuTop1_eh_reqUpdateMenu(object sender, EventArgs e)
{
// chiamo update del menu sx...
Mod_menuSx1.forzaUpdateMenu();
}
void Mod_menuTop1_eh_toggleMenuSx(object sender, EventArgs e)
{
// cambio stato visualizzaizone menù laterale...
Mod_menuSx1.Visible = !Mod_menuSx1.Visible;
}
protected override void OnUnload(EventArgs e)
{
base.OnUnload(e);
// svuoto tutti gli event handler inseriti...
Mod_menuTop1.eh_toggleMenuSx -= new EventHandler(Mod_menuTop1_eh_toggleMenuSx);
Mod_menuTop1.eh_reqUpdateMenu -= new EventHandler(Mod_menuTop1_eh_reqUpdateMenu);
}
}
+104
View File
@@ -0,0 +1,104 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class AjaxTitle {
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// sm control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.ToolkitScriptManager sm;
/// <summary>
/// UpdatePanel1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel UpdatePanel1;
/// <summary>
/// Mod_menuTop1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuTop Mod_menuTop1;
/// <summary>
/// UpdatePanel2 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel UpdatePanel2;
/// <summary>
/// Mod_menuSx1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuSx Mod_menuSx1;
/// <summary>
/// updPanelPagina control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel updPanelPagina;
/// <summary>
/// Mod_pageTitleAndSearch1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_pageTitleAndSearch Mod_pageTitleAndSearch1;
/// <summary>
/// ContentPlaceHolder1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder ContentPlaceHolder1;
/// <summary>
/// Mod_menuBottom1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuBottom Mod_menuBottom1;
}
@@ -0,0 +1,57 @@
<%@ Master Language="C#" AutoEventWireup="true" Inherits="MasterAjax" Codebehind="MasterAjax.master.cs" %>
<%@ Register Src="~/WebUserControls/mod_menuTop.ascx" TagName="mod_menuTop" TagPrefix="uc1" %>
<%@ Register Src="~/WebUserControls/mod_menuSx.ascx" TagName="mod_menuSx" TagPrefix="uc2" %>
<%@ Register Src="~/WebUserControls/mod_menuBottom.ascx" TagName="mod_menuBottom" TagPrefix="uc5" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<link href="~/Style.css" rel="stylesheet" type="text/css" />
</head>
<body class="body">
<form id="form1" runat="server">
<asp:ToolkitScriptManager ID="sm" runat="server" EnablePartialRendering="true" EnableScriptGlobalization="true"
EnableScriptLocalization="true">
</asp:ToolkitScriptManager>
<table class="formatTableGeneral" id="tblFormat" cellspacing="0" cellpadding="0">
<tr>
<td class="topMenu" colspan="2">
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<uc1:mod_menuTop ID="Mod_menuTop1" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
</td>
</tr>
<tr>
<td class="menuSx">
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Always" RenderMode="Inline">
<ContentTemplate>
<uc2:mod_menuSx ID="Mod_menuSx1" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td class="bodyMain">
<div>
<asp:UpdatePanel ID="updPanelPagina" runat="server" UpdateMode="Conditional" RenderMode="Inline">
<ContentTemplate>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</td>
</tr>
<tr>
<td colspan="2" class="bottomWrite">
<uc5:mod_menuBottom ID="Mod_menuBottom1" runat="server" />
</td>
</tr>
</table>
</form>
</body>
</html>
@@ -0,0 +1,49 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
public partial class MasterAjax : System.Web.UI.MasterPage
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Page.Title = SteamWare.memLayer.ML.confReadString("_titoloPagina");
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
Mod_menuTop1.eh_toggleMenuSx += new EventHandler(Mod_menuTop1_eh_toggleMenuSx);
Mod_menuTop1.eh_reqUpdateMenu += new EventHandler(Mod_menuTop1_eh_reqUpdateMenu);
}
void Mod_menuTop1_eh_reqUpdateMenu(object sender, EventArgs e)
{
// chiamo update del menu sx...
Mod_menuSx1.forzaUpdateMenu();
}
void Mod_menuTop1_eh_toggleMenuSx(object sender, EventArgs e)
{
// cambio stato visualizzaizone menù laterale...
Mod_menuSx1.Visible = !Mod_menuSx1.Visible;
}
protected override void OnUnload(EventArgs e)
{
base.OnUnload(e);
// svuoto tutti gli event handler inseriti...
Mod_menuTop1.eh_toggleMenuSx -= new EventHandler(Mod_menuTop1_eh_toggleMenuSx);
Mod_menuTop1.eh_reqUpdateMenu -= new EventHandler(Mod_menuTop1_eh_reqUpdateMenu);
}
}
+104
View File
@@ -0,0 +1,104 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class MasterAjax {
/// <summary>
/// Head1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlHead Head1;
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// sm control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.ToolkitScriptManager sm;
/// <summary>
/// UpdatePanel1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel UpdatePanel1;
/// <summary>
/// Mod_menuTop1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuTop Mod_menuTop1;
/// <summary>
/// UpdatePanel2 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel UpdatePanel2;
/// <summary>
/// Mod_menuSx1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuSx Mod_menuSx1;
/// <summary>
/// updPanelPagina control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.UpdatePanel updPanelPagina;
/// <summary>
/// ContentPlaceHolder1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder ContentPlaceHolder1;
/// <summary>
/// Mod_menuBottom1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuBottom Mod_menuBottom1;
}
@@ -0,0 +1,30 @@
<%@ Master Language="C#" AutoEventWireup="true" Inherits="Portable" Codebehind="Portable.master.cs" %>
<%@ Register Src="~/WebUserControls/mod_menuBottomPortable.ascx" TagName="mod_menuBottomMini" TagPrefix="uc2" %>
<%@ Register Src="~/WebUserControls/mod_titlePortable.ascx" TagName="mod_titleMini" TagPrefix="uc3" %>
<%@ Register Src="~/WebUserControls/mod_menuBottom.ascx" TagName="mod_menuBottom" TagPrefix="uc1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
<link href="~/Style.css" rel="stylesheet" type="text/css" />
</head>
<body class="bodyPortable">
<div style="iphone">
<form id="form1" runat="server">
<div>
<table width="100%">
<tr><td align="center">
<uc3:mod_titleMini id="Mod_titleMini1" runat="server">
</uc3:mod_titleMini>
<asp:contentplaceholder id="ContentPlaceHolder1" runat="server">
</asp:contentplaceholder>
<uc2:mod_menuBottomMini ID="Mod_menuBottomMini1" runat="server" />
</td></tr>
</table>
</div>
</form>
</div>
</body>
</html>
@@ -0,0 +1,18 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class Portable : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
+50
View File
@@ -0,0 +1,50 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class Portable {
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// Mod_titleMini1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_titleMini Mod_titleMini1;
/// <summary>
/// ContentPlaceHolder1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder ContentPlaceHolder1;
/// <summary>
/// Mod_menuBottomMini1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_menuBottomMini Mod_menuBottomMini1;
}
@@ -0,0 +1,17 @@
<%@ Master Language="C#" AutoEventWireup="true" Inherits="MasterPage" Codebehind="Standard.master.cs" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:contentplaceholder id="ContentPlaceHolder1" runat="server">
</asp:contentplaceholder>
</div>
</form>
</body>
</html>
@@ -0,0 +1,18 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class MasterPage : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
+32
View File
@@ -0,0 +1,32 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
public partial class MasterPage {
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// ContentPlaceHolder1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ContentPlaceHolder ContentPlaceHolder1;
}
+177
View File
@@ -0,0 +1,177 @@
<%@ Control Language="C#" AutoEventWireup="true" Inherits="XPS.WebUserControls.mod_ULP" Codebehind="mod_ULP.ascx.cs" %>
<%@ Register Src="mod_filtro.ascx" TagName="mod_filtro" TagPrefix="uc1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_navPath.ascx" TagName="mod_navPath" TagPrefix="uc2" %>
<%@ Register Src="mod_logStati.ascx" TagName="mod_logStati" TagPrefix="uc3" %>
<asp:Label runat="server" ID="lblULP" CssClass="ctrHeaderPagerDet" Width="150px" />
<asp:GridView ID="grView" runat="server" AutoGenerateColumns="False" DataSourceID="ods"
DataKeyNames="Cod" AllowPaging="True" AllowSorting="True" OnSelectedIndexChanged="grView_SelectedIndexChanged"
OnDataBound="grView_DataBound" OnRowUpdating="grView_RowUpdating" OnRowUpdated="grView_RowUpdated"
OnRowDeleted="grView_RowDeleted" Width="100%">
<RowStyle CssClass="ctrRowStyleDet" />
<AlternatingRowStyle CssClass="ctrAltRowStyleDet" />
<EditRowStyle CssClass="ctrEditRowStyleDet" />
<SelectedRowStyle CssClass="ctrSelRowStyleDet" />
<FooterStyle CssClass="ctrFooterDet" />
<PagerStyle CssClass="ctrHeaderPagerDet" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPagerDet" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyleDet" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:ImageButton ID="imgClona" runat="server" CausesValidation="False" ToolTip='<%# traduci("clonaRow") %>'
ImageUrl='<%# imgPath(SteamWare.tipoImg.clona , SteamWare.dimImg.small) %>' CommandArgument="clonaObj"
Visible='<%# userCanEdit(Eval("CodStato")) %>' CommandName="Update" OnClick="imgClonaRow_Click" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="#" SortExpression="Posizione">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("Posizione") %>' ToolTip='<%# Eval("Cod")%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Eval("Posizione") %>' ToolTip='<%# Eval("Cod")%>'></asp:Label>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton runat="server" ID="btnPrintScheda" ImageUrl='<%# imgPath(SteamWare.tipoImg.barcodeArancio , SteamWare.dimImg.small) %>' CommandArgument='<%# Eval("Cod")%>' ToolTip='<%# traduci("stampaSchedaIdentificazione") %>'
onclick="btnPrintScheda_Click" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Stato" SortExpression="Stato">
<ItemTemplate>
<asp:ImageButton ID="imgMostraLogStati" runat="server" CausesValidation="False" CommandName="Select"
OnClick="imgMostraLogStati_Click" ToolTip='<%# traduci("MostraLogStati")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.notepad , SteamWare.dimImg.small) %>' />
<asp:Label ID="Label6" runat="server" Text='<%# Bind("Stato") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgEdit" runat="server" CausesValidation="False" CommandName="Edit"
ToolTip='<%# traduci("Edit") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica, SteamWare.dimImg.small) %>'
Visible='<%# userCanEdit(Eval("CodStato")) %>' />
<asp:ImageButton ID="imgSchedula" runat="server" CausesValidation="False" CommandName="Select"
OnClick="imgSchedula_Click" ToolTip='<%# traduci("SchedulaObjXpsSingle")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica , SteamWare.dimImg.small) %>'
Visible='<%# isSchedulaVisible(Eval("CodStato")) %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="descrizione" SortExpression="descrizione">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("descrizione") %>' Width="30em"
TextMode="MultiLine" Rows="5"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("descrizione") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Peso" SortExpression="Peso">
<EditItemTemplate>
<asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("Peso") %>' Width="5em"></asp:TextBox>&nbsp;Kg
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("Peso","{0:N2} Kg") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Qta" SortExpression="Qta">
<EditItemTemplate>
<asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("Qta") %>' Width="5em"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%# Bind("Qta") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="DataArrivo" HeaderText="DataArrivo" SortExpression="DataArrivo"
ReadOnly="True" DataFormatString="{0:dd/MM/yy HH:mm}" />
<asp:TemplateField HeaderText="DataPrevista" SortExpression="DataPrevista">
<EditItemTemplate>
<asp:Label ID="Label5" runat="server" Text='<%# Bind("DataPrevista", "{0:dd/MM/yy HH:mm}") %>'></asp:Label>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label5" runat="server" Text='<%# Bind("DataPrevista", "{0:dd/MM/yy HH:mm}") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>'
Visible='<%# userCanDel(Eval("CodStato"),Eval("IdxObjMamma"),Eval("Posizione")) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="getByCodMamma" TypeName="DS_applicazioneTableAdapters.v_ULPTableAdapter"
DeleteMethod="sp_delRow" UpdateMethod="UpdateQuery">
<DeleteParameters>
<asp:Parameter Name="Original_Cod" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="descrizione" Type="String" />
<asp:Parameter Name="Qta" Type="Int32" />
<asp:Parameter Name="Peso" Type="Double" />
<asp:Parameter Name="DataPrevista" Type="DateTime" />
<asp:Parameter Name="Original_Cod" Type="String" />
</UpdateParameters>
<SelectParameters>
<asp:SessionParameter DefaultValue="0" Name="CodMamma" SessionField="CodRow_sel"
Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
<asp:Panel ID="pnlSetDueDate" Visible="false" runat="server">
<div class="notaMargine">
<div style="text-align: center;">
<asp:Label runat="server" ID="lblDataPrev" Text="..." /><br />
<asp:TextBox ID="txtDueDate" runat="server" Text="..." Width="6em" />
<asp:RequiredFieldValidator ID="rfvDueDate" runat="server" ErrorMessage="!!!" ControlToValidate="txtDueDate" />
<cc1:CalendarExtender ID="ce_DueDate" runat="server" FirstDayOfWeek="Monday" TargetControlID="txtDueDate"
Format="dd/MM/yyyy">
</cc1:CalendarExtender>
<asp:DropDownList runat="server" ID="ddlOra">
<asp:ListItem Value="9">09:00</asp:ListItem>
<asp:ListItem Value="14">14:00</asp:ListItem>
</asp:DropDownList>
</div>
<div style="text-align: center;">
<asp:Button ID="btnOk" runat="server" Width="100px" OnClick="btnOk_Click" />
&nbsp;&nbsp;
<asp:Button ID="btnCancel" runat="server" Width="100px" OnClick="btnCancel_Click" />
</div>
</div>
</asp:Panel>
<asp:Panel ID="pnlSetAllSched" Visible="false" runat="server">
<div style="text-align: center;">
<asp:Button ID="btnAllSched" runat="server" Width="250px" OnClick="btnAllSched_Click" />
</div>
</asp:Panel>
<asp:Panel ID="pnlLogStati" Visible="false" runat="server">
<uc3:mod_logStati ID="mod_logStati1" runat="server" />
</asp:Panel>
+460
View File
@@ -0,0 +1,460 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
using XPS_data;
namespace XPS.WebUserControls
{
public partial class mod_ULP : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
grView.SelectedIndex = -1;
grView.DataBind();
if (eh_resetSelezione != null)
{
eh_resetSelezione(this, new EventArgs());
}
}
#endregion
#region gestione eventi
public event EventHandler eh_resetSelezione;
public event EventHandler eh_nuovoValore;
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_applicazione.v_commesseDataTable tabella = new DS_applicazione.v_commesseDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "CodRow";
}
protected override void bindControlli()
{
base.bindControlli();
}
/// <summary>
/// determino se il pulsante di conferma tutto schedulato sia visibile...
/// </summary>
public void setupControlli()
{
// calcolo se tutto l'albero cui appartiene la row madre abbia data di schedulazione...
bool allSched = false;
try
{
// carico codRow mamma...
string codComune = calcObjCommon();
XPS_data.DS_applicazioneTableAdapters.sp_contaNonSchedTableAdapter taContaNonSched = new XPS_data.DS_applicazioneTableAdapters.sp_contaNonSchedTableAdapter();
allSched = (taContaNonSched.GetData(codComune)[0].quanti == 0);
// controllo se loadAllCdC stato sia 2...
if (XPS_data.XPS.obj.taObj.getByIdxObj(memLayer.ML.StringSessionObj("CodRow_sel"))[0].CodStato != "02")
{
allSched = false;
}
}
catch
{ }
pnlSetAllSched.Visible = allSched;
}
protected override void traduciObj()
{
base.traduciObj();
lblULP.Text = traduci("lblULP");
lblDataPrev.Text = traduci("updateObjDueDate");
txtDueDate.Text = DateTime.Now.AddDays(memLayer.ML.confReadInt("defDayLeadTime")).ToString("dd/MM/yyyy");
btnCancel.Text = traduci("btnCancel");
btnOk.Text = traduci("btnOk");
btnAllSched.Text = traduci("btnAllSched");
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// gestione evento richiesta nuovo valore (mostra footer, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
// mostro il footer oppure la riga dei dettagli x nuovo...
if (grView.FooterRow != null)
{
grView.FooterRow.Visible = true;
}
}
/// <summary>
/// salvo in session che il prox comando è clonare...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgClonaRow_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "clonaRow");
}
/// <summary>
/// in caso di aggiornamento verifico se sia salvato un comando clona...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
// quale comando?
// carico l'idx dell'oggetto
string _idxCiclo = e.Keys["Cod"].ToString();
string _comando = "";
if (SteamWare.memLayer.ML.isInSessionObject("nextObjCommand"))
{
_comando = SteamWare.memLayer.ML.StringSessionObj("nextObjCommand");
SteamWare.memLayer.ML.emptySessionVal("nextObjCommand");
}
// verifico il tipo di richiesta (clona o update normale)
switch (_comando)
{
case "clonaRow":
XPS_data.DS_applicazioneTableAdapters.v_ULPTableAdapter taULP = new XPS_data.DS_applicazioneTableAdapters.v_ULPTableAdapter();
taULP.sp_clonaObj(_idxCiclo);
grView.EditIndex = -1;
grView.DataBind();
// blocco update!
e.Cancel = true;
// segnalo update...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
break;
default:
// faccio update!
break;
}
}
/// <summary>
/// righe aggiornate
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowUpdated(object sender, GridViewUpdatedEventArgs e)
{
// segnalo update...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// restituisce se sia visibile il controllo di accettazione...
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool isAccettVisible(object codStato)
{
bool answ = true;
if (codStato.ToString().IndexOf("01") < 0) answ = false;
return answ;
}
/// <summary>
/// restituisce true se rimangano altri valori a pari idxObjMamma - ovvero non sto cancellando l'ultima riga... che è vietato...
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool otherRemains(object IdxObjMamma)
{
bool answ = false;
int sisters = Convert.ToInt32(XPS_data.XPS.obj.taObj.countSisters(IdxObjMamma.ToString()));
if (sisters > 1) answ = true;
return answ;
}
/// <summary>
/// restituisce true se sia l'ultimo oggetto del suo tipo (max posizione x codice mamma...)
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool lastSister(object IdxObjMamma, object posizione)
{
bool answ = false;
string maxPos = XPS_data.XPS.obj.taObj.lastSister(IdxObjMamma.ToString()).ToString();
if (Convert.ToInt32(maxPos) == Convert.ToInt32(posizione)) answ = true;
return answ;
}
/// <summary>
/// determina se l'utente possa cancellare
/// </summary>
/// <returns></returns>
public bool userCanDel(object codStato, object IdxObjMamma, object posizione)
{
return (isAccettVisible(codStato) && otherRemains(IdxObjMamma) && lastSister(IdxObjMamma, posizione));
}
/// <summary>
/// determina se l'utente possa editare o duplicare la riga
/// </summary>
/// <returns></returns>
public bool userCanEdit(object codStato)
{
return isAccettVisible(codStato);
}
/// <summary>
/// restituisce se sia visibile il controllo di edit x schedulare in blocco tutto (oggetto, righe, ULP...)
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool isSchedulaVisible(object codStato)
{
bool answ = true;
if (codStato.ToString().IndexOf("02") < 0) answ = false;
// controllo se sono su visualizzazione produzione...
if (memLayer.ML.StringSessionObj("returnPage").IndexOf("Prod") < 0) answ = false;
return answ;
}
/// <summary>
/// salvo in session che il prox comando è inserire scheduling x tutti... x non fare select...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgSchedula_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "schedulaObj");
}
/// <summary>
/// salvo in session che il prox comando è clonare...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgMostraLogStati_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "mostraLog");
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
string _comando = "";
if (SteamWare.memLayer.ML.isInSessionObject("nextObjCommand"))
{
_comando = SteamWare.memLayer.ML.StringSessionObj("nextObjCommand");
SteamWare.memLayer.ML.emptySessionVal("nextObjCommand");
}
switch (_comando)
{
case "schedulaObj": // non è vero select ma un show del log di cambio stato
pnlSetDueDate.Visible = true;
pnlLogStati.Visible = false;
break;
case "mostraLog": // non è vero select ma un show del log di cambio stato
pnlSetDueDate.Visible = false;
pnlLogStati.Visible = true;
mod_logStati1.idxObj = grView.SelectedValue.ToString();
break;
default: // è select...
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue.ToString(), true);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
break;
}
}
protected void btnOk_Click(object sender, EventArgs e)
{
// significa che mi chiedono di impostare la data a tutti i child...
DateTime dueDate = Convert.ToDateTime(txtDueDate.Text).AddHours(Convert.ToInt32(ddlOra.SelectedValue));
// salvo le date...
XPS_data.XPS.obj.taObj.updateDueDateULP(dueDate, user_std.UtSn.utente, DateTime.Now, grView.SelectedValue.ToString());
hidePanelDueDate();
}
protected void btnCancel_Click(object sender, EventArgs e)
{
pnlSetDueDate.Visible = false;
resetSelezione();
}
/// <summary>
/// incida come tutto schedulato il ddt...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAllSched_Click(object sender, EventArgs e)
{
string codObjCommon = calcObjCommon();
// aggiorno stato...
XPS_data.XPS.obj.taObj.updateStatoTree("03", user_std.UtSn.utente, DateTime.Now, codObjCommon);
hidePanelDueDate();
}
/// <summary>
/// calcola il codice dell'obj mamma...
/// </summary>
/// <returns></returns>
private string calcObjCommon()
{
int posR = 8; // grView.SelectedValue.ToString().IndexOf("U");
string codObjCommon = memLayer.ML.StringSessionObj("CodRow_sel").Substring(0, posR) + "%";
return codObjCommon;
}
/// <summary>
/// nasconde il pannello della data di consegna
/// </summary>
private void hidePanelDueDate()
{
// nascondo i vari controlli...
pnlSetDueDate.Visible = false;
setupControlli();
resetSelezione();
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
protected void grView_RowDeleted(object sender, GridViewDeletedEventArgs e)
{
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// stampa la scheda selezionata
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnPrintScheda_Click(object sender, ImageClickEventArgs e)
{
ImageButton imgBtn = (ImageButton)sender;
// stampo!
reportPrinter.obj.printReport(reportRichiesto.SchedaIdentificazione, memLayer.ML.confReadString("printerSchedaIdent"), imgBtn.CommandArgument);
}
#endregion
}
}
+169
View File
@@ -0,0 +1,169 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_ULP {
/// <summary>
/// lblULP control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblULP;
/// <summary>
/// grView control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grView;
/// <summary>
/// ods control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
/// <summary>
/// lblNumRec control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumRec;
/// <summary>
/// lblWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarning;
/// <summary>
/// pnlSetDueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlSetDueDate;
/// <summary>
/// lblDataPrev control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblDataPrev;
/// <summary>
/// txtDueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtDueDate;
/// <summary>
/// rfvDueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RequiredFieldValidator rfvDueDate;
/// <summary>
/// ce_DueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.CalendarExtender ce_DueDate;
/// <summary>
/// ddlOra control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList ddlOra;
/// <summary>
/// btnOk control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnOk;
/// <summary>
/// btnCancel control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnCancel;
/// <summary>
/// pnlSetAllSched control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlSetAllSched;
/// <summary>
/// btnAllSched control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnAllSched;
/// <summary>
/// pnlLogStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlLogStati;
/// <summary>
/// mod_logStati1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_logStati mod_logStati1;
}
}
@@ -0,0 +1,177 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="mod_anagTipoObj.ascx.cs"
Inherits="mod_anagTipoObj" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_selettore_ajax.ascx" TagName="mod_selettore_ajax" TagPrefix="uc1" %>
<asp:GridView ID="grView" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False"
OnSelectedIndexChanged="grView_SelectedIndexChanged" OnDataBound="grView_DataBound"
DataKeyNames="idxTipoObj" DataSourceID="ods">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
<asp:Button ID="btnNew" runat="server" OnClick="btnNewFromEmpty_Click" Text='<%# traduci("New") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnReset" runat="server" Text='<%# traduci("Reset") %>' OnClick="btnReset_Click"
Visible="true" />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgSelect" runat="server" CausesValidation="False" CommandName="Select"
ToolTip='<%# traduci("Select") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.seleziona, SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgEdit" runat="server" CausesValidation="False" CommandName="Edit"
ToolTip='<%# traduci("Edit") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica, SteamWare.dimImg.small) %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="DescrObj" SortExpression="DescrObj">
<EditItemTemplate>
<asp:TextBox ID="txtDescrObj" runat="server" Text='<%# Bind("DescrObj") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("DescrObj") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtDescrObj" runat="server" Text='<%# Bind("DescrObj") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Livello" SortExpression="Livello">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Livello") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("Livello") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtLivello" runat="server" Text='<%# Bind("Livello") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="ProcReq" SortExpression="ProcReq" ItemStyle-HorizontalAlign="center">
<EditItemTemplate>
<asp:CheckBox ID="chkProcReq" runat="server" Checked='<%# Bind("ProcReq") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkProcReq" runat="server" Checked='<%# Eval("ProcReq") %>' Enabled="false" />
</ItemTemplate>
<FooterTemplate>
<asp:CheckBox ID="chkProcReq" runat="server" Checked='<%# Bind("ProcReq") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="ExtView" SortExpression="ExtView" ItemStyle-HorizontalAlign="center">
<EditItemTemplate>
<asp:CheckBox ID="chkExtView" runat="server" Checked='<%# Bind("ExtView") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkExtView" runat="server" Checked='<%# Eval("ExtView") %>' Enabled="false" />
</ItemTemplate>
<FooterTemplate>
<asp:CheckBox ID="chkExtView" runat="server" Checked='<%# Bind("ExtView") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Facoltativo" SortExpression="Facoltativo" ItemStyle-HorizontalAlign="center">
<EditItemTemplate>
<asp:CheckBox ID="chkFacoltativo" runat="server" Checked='<%# Bind("Facoltativo") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkFacoltativo" runat="server" Checked='<%# Eval("Facoltativo") %>'
Enabled="false" />
</ItemTemplate>
<FooterTemplate>
<asp:CheckBox ID="chkFacoltativo" runat="server" Checked='<%# Bind("Facoltativo") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="isLogical" SortExpression="isLogical" ItemStyle-HorizontalAlign="center">
<EditItemTemplate>
<asp:CheckBox ID="chkisLogical" runat="server" Checked='<%# Bind("isLogical") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkisLogical" runat="server" Checked='<%# Eval("isLogical") %>'
Enabled="false" />
</ItemTemplate>
<FooterTemplate>
<asp:CheckBox ID="chkisLogical" runat="server" Checked='<%# Bind("isLogical") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="isCode" SortExpression="isCode" ItemStyle-HorizontalAlign="center">
<EditItemTemplate>
<asp:CheckBox ID="chkisCode" runat="server" Checked='<%# Bind("isCode") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkisCode" runat="server" Checked='<%# Eval("isCode") %>' Enabled="false" />
</ItemTemplate>
<FooterTemplate>
<asp:CheckBox ID="chkisCode" runat="server" Checked='<%# Bind("isCode") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnNew" runat="server" OnClick="btnNew_Click" Text='<%# traduci("New") %>' />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate2" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert2" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_XPSTableAdapters.AnagTipoObjTableAdapter"
OnInserting="recuperaFooter" FilterExpression=" DescrObj LIKE '%{0}%'" DeleteMethod="DeleteQuery"
InsertMethod="Insert" UpdateMethod="UpdateQuery">
<FilterParameters>
<asp:SessionParameter DefaultValue="*" Name="ricerca" SessionField="valoreCercato" />
</FilterParameters>
<DeleteParameters>
<asp:Parameter Name="Original_IdxTipoObj" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="DescrObj" Type="String" />
<asp:Parameter Name="Livello" Type="String" />
<asp:Parameter Name="ProcReq" Type="Boolean" />
<asp:Parameter Name="ExtView" Type="Boolean" />
<asp:Parameter Name="Original_IdxTipoObj" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="DescrObj" Type="String" />
<asp:Parameter Name="Livello" Type="String" />
<asp:Parameter Name="ProcReq" Type="Boolean" />
<asp:Parameter Name="ExtView" Type="Boolean" />
</InsertParameters>
</asp:ObjectDataSource>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
@@ -0,0 +1,347 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
public partial class mod_anagTipoObj : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// imposta errore non cancellabilità per record correlati
/// </summary>
protected void setNoDeletableErrorMessage()
{
// mostro avviso di non cancellabilità...
lblWarning.Text = traduci("notDeletable_hasChild");
lblWarning.Visible = true;
grView.DataBind();
}
/// <summary>
/// esegue cancellazione record
/// </summary>
protected void doDelete()
{
// posso cancellare...
lblWarning.Visible = false;
ods.Delete();
}
/// <summary>
/// Valida la cancellazione per i dati mostrati dal gridView
/// richiede sia preventivamentedichiarato _idxGridView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected virtual void validaDelete(object sender, ObjectDataSourceMethodEventArgs e)
{
int idx = Convert.ToInt32(e.InputParameters[string.Format("Original_{0}", _idxGridView)]);
if (objIsNotRelated(idx))
{
// annullo cancellazione...
e.Cancel = true;
// seleziono record... metto in session valore idx e poi ridisegno...
SteamWare.memLayer.ML.setSessionVal(_idxGridView, idx);
setNoDeletableErrorMessage();
}
else
{
doDelete();
}
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// annulla inserimento nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblCanc_click(object sender, EventArgs e)
{
// annullo inserimento: nascondo footer, bind controlli...
grView.FooterRow.Visible = false;
}
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView));
grView.SelectedIndex = -1;
grView.DataBind();
lblWarning.Visible = false;
if (eh_resetSelezione != null)
{
eh_resetSelezione(this, new EventArgs());
}
}
/// <summary>
/// gestione evento richiesta nuovo valore (mostra footer, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
// mostro il footer oppure la riga dei dettagli x nuovo...
if (grView.FooterRow != null)
{
grView.FooterRow.Visible = true;
}
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
}
#endregion
#region gestione eventi
public event EventHandler eh_resetSelezione;
public event EventHandler eh_nuovoValore;
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// verifica complessiva non esistenza record child
/// </summary>
/// <param name="idxObj"></param>
/// <returns></returns>
protected bool objIsNotRelated(object idxObj)
{
// !!! FARE vero controllo cancellazione?
return false;// (taRouteVersion.getByOggetti(idxObj.ToString(), vers.ToString()).Rows.Count == 0);
}
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_XPS.AnagTipoObjDataTable tabella = new DS_XPS.AnagTipoObjDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "idxTipoObj";
}
void Mod_filtro1_eh_selValore(object sender, EventArgs e)
{
// ridisegno
}
/// <summary>
/// setta selected alla riga il cui valore key è in session
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowDataBound(object sender, GridViewRowEventArgs e)
{
// se riga di dati...
if (e.Row.RowType == DataControlRowType.DataRow)
{
// ottengo la riga tipizzata...
System.Data.DataRowView _drv = (System.Data.DataRowView)e.Row.DataItem;
DS_XPS.AnagTipoObjRow riga = (DS_XPS.AnagTipoObjRow)_drv.Row;
if (SteamWare.memLayer.ML.StringSessionObj(_idxGridView) == riga.IdxTipoObj.ToString())
{
grView.SelectedIndex = e.Row.RowIndex;
}
}
}
/// <summary>
/// gestione evento inserimento nuovo record standard (se ZERO presenti)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNewFromEmpty_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
DS_XPSTableAdapters.AnagTipoObjTableAdapter taTipoObj = new DS_XPSTableAdapters.AnagTipoObjTableAdapter();
// creo 1 obj vuoto...
taTipoObj.Insert("Nuovo Oggetto", 1, false, false, true, false, false);
grView.DataBind();
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// recupera i dati di un nuovo record contenuti nel footer di un gridView;
/// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e)
{
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
{
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
{
tipoColonna = "textBox";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null)
{
tipoColonna = "selAjax";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
case "selAjax":
e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore;
break;
default:
break;
}
tipoColonna = "";
}
}
#endregion
}
@@ -0,0 +1,132 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_anagraficaEventi" Codebehind="mod_anagraficaEventi.ascx.cs" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_selettore_ajax.ascx" TagName="mod_selettore_ajax" TagPrefix="uc1" %>
<asp:GridView ID="grView" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False"
OnSelectedIndexChanged="grView_SelectedIndexChanged" OnDataBound="grView_DataBound"
DataKeyNames="CodEvento" DataSourceID="ods">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
<asp:Button ID="btnNew" runat="server" OnClick="btnNewFromEmpty_Click" Text='<%# traduci("New") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnReset" runat="server" Text='<%# traduci("Reset") %>' OnClick="btnReset_Click"
Visible="true" />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgSelect" runat="server" CausesValidation="False" CommandName="Select"
ToolTip='<%# traduci("Select") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.seleziona, SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgEdit" runat="server" CausesValidation="False" CommandName="Edit"
ToolTip='<%# traduci("Edit") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica, SteamWare.dimImg.small) %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="CodTipoEvento" SortExpression="CodTipoEvento">
<EditItemTemplate>
<asp:DropDownList ID="dlCodTipoEvento" runat="server" DataSourceID="odsTipoEvento" DataTextField="label"
DataValueField="value" SelectedValue='<%# Bind("CodTipoEvento") %>' /></EditItemTemplate>
<ItemTemplate>
<asp:DropDownList ID="dlCodTipoEvento" runat="server" DataSourceID="odsTipoEvento" DataTextField="label"
DataValueField="value" SelectedValue='<%# Bind("CodTipoEvento") %>' Enabled="false" />
</ItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="dlCodTipoEvento" runat="server" DataSourceID="odsTipoEvento" DataTextField="label"
DataValueField="value" SelectedValue='<%# Bind("CodTipoEvento") %>' /></FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="CodEvento" SortExpression="CodEvento">
<EditItemTemplate>
<asp:TextBox ID="txtCodEvento" runat="server" Text='<%# Bind("CodEvento") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("CodEvento") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtCodEvento" runat="server" Text='<%# Bind("CodEvento") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="DescrEvento" SortExpression="DescrEvento">
<EditItemTemplate>
<asp:TextBox ID="txtDescrEvento" runat="server" Text='<%# Bind("DescrEvento") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("DescrEvento") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtDescrEvento" runat="server" Text='<%# Bind("DescrEvento") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnNew" runat="server" OnClick="btnNew_Click" Text='<%# traduci("New") %>' />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate2" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert2" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_XPSTableAdapters.EventiTableAdapter" OnInserting="recuperaFooter"
FilterExpression=" DescrEvento LIKE '%{0}%'" DeleteMethod="DeleteQuery" InsertMethod="Insert"
UpdateMethod="UpdateQuery">
<FilterParameters>
<asp:SessionParameter DefaultValue="*" Name="ricerca" SessionField="valoreCercato" />
</FilterParameters>
<DeleteParameters>
<asp:Parameter Name="Original_CodEvento" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="CodEvento" Type="String" />
<asp:Parameter Name="DescrEvento" Type="String" />
<asp:Parameter Name="CodTipoEvento" Type="String" />
<asp:Parameter Name="Original_CodEvento" Type="String" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="CodEvento" Type="String" />
<asp:Parameter Name="CodTipoEvento" Type="String" />
<asp:Parameter Name="DescrEvento" Type="String" />
</InsertParameters>
</asp:ObjectDataSource>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
<asp:ObjectDataSource ID="odsTipoEvento" runat="server" SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selTipoEventoTableAdapter"
OldValuesParameterFormatString="Original_{0}"></asp:ObjectDataSource>
@@ -0,0 +1,369 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
namespace XPS.WebUserControls
{
public partial class mod_anagraficaEventi : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// imposta errore non cancellabilità per record correlati
/// </summary>
protected void setNoDeletableErrorMessage()
{
// mostro avviso di non cancellabilità...
lblWarning.Text = traduci("notDeletable_hasChild");
lblWarning.Visible = true;
grView.DataBind();
}
/// <summary>
/// esegue cancellazione record
/// </summary>
protected void doDelete()
{
// posso cancellare...
lblWarning.Visible = false;
ods.Delete();
}
/// <summary>
/// Valida la cancellazione per i dati mostrati dal gridView
/// richiede sia preventivamentedichiarato _idxGridView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected virtual void validaDelete(object sender, ObjectDataSourceMethodEventArgs e)
{
int idx = Convert.ToInt32(e.InputParameters[string.Format("Original_{0}", _idxGridView)]);
if (objIsNotRelated(idx))
{
// annullo cancellazione...
e.Cancel = true;
// seleziono record... metto in session valore idx e poi ridisegno...
SteamWare.memLayer.ML.setSessionVal(_idxGridView, idx);
setNoDeletableErrorMessage();
}
else
{
doDelete();
}
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// annulla inserimento nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblCanc_click(object sender, EventArgs e)
{
// annullo inserimento: nascondo footer, bind controlli...
grView.FooterRow.Visible = false;
}
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView));
grView.SelectedIndex = -1;
grView.DataBind();
lblWarning.Visible = false;
if (eh_resetSelezione != null)
{
eh_resetSelezione(this, new EventArgs());
}
}
/// <summary>
/// gestione evento richiesta nuovo valore (mostra footer, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
// mostro il footer oppure la riga dei dettagli x nuovo...
if (grView.FooterRow != null)
{
grView.FooterRow.Visible = true;
}
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// collega i controlli
/// </summary>
protected override void bindControlli()
{
base.bindControlli();
caricaTabelle();
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
}
#endregion
#region gestione eventi
public event EventHandler eh_resetSelezione;
public event EventHandler eh_nuovoValore;
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// carico le tabelle
/// </summary>
private void caricaTabelle()
{
// non serve qui...
}
/// <summary>
/// verifica complessiva non esistenza record child
/// </summary>
/// <param name="idxObj"></param>
/// <returns></returns>
protected bool objIsNotRelated(object idxObj)
{
// !!! FARE vero controllo cancellazione?
return false;// (taRouteVersion.getByOggetti(idxObj.ToString(), vers.ToString()).Rows.Count == 0);
}
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
XPS_data.DS_XPS.EventiDataTable tabella = new XPS_data.DS_XPS.EventiDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "CodEvento";
}
void Mod_filtro1_eh_selValore(object sender, EventArgs e)
{
// ridisegno
}
/// <summary>
/// setta selected alla riga il cui valore key è in session
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowDataBound(object sender, GridViewRowEventArgs e)
{
// se riga di dati...
if (e.Row.RowType == DataControlRowType.DataRow)
{
// ottengo la riga tipizzata...
System.Data.DataRowView _drv = (System.Data.DataRowView)e.Row.DataItem;
XPS_data.DS_XPS.EventiRow riga = (XPS_data.DS_XPS.EventiRow)_drv.Row;
if (SteamWare.memLayer.ML.StringSessionObj(_idxGridView) == riga.CodEvento.ToString())
{
grView.SelectedIndex = e.Row.RowIndex;
}
}
}
/// <summary>
/// gestione evento inserimento nuovo record standard (se ZERO presenti)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNewFromEmpty_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
XPS_data.DS_XPSTableAdapters.EventiTableAdapter taEventi = new XPS_data.DS_XPSTableAdapters.EventiTableAdapter();
// creo 1 obj vuoto...
taEventi.Insert("ND", "ND", "Evento nullo","");
grView.DataBind();
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// recupera i dati di un nuovo record contenuti nel footer di un gridView;
/// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e)
{
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
{
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
{
tipoColonna = "textBox";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null)
{
tipoColonna = "selAjax";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).Checked;
break;
case "selAjax":
e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore;
break;
default:
break;
}
tipoColonna = "";
}
}
#endregion
}
}
@@ -0,0 +1,61 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_anagraficaEventi {
/// <summary>
/// grView control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grView;
/// <summary>
/// ods control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
/// <summary>
/// lblNumRec control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumRec;
/// <summary>
/// lblWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarning;
/// <summary>
/// odsTipoEvento control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsTipoEvento;
}
}
@@ -0,0 +1,116 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_anagraficaMappe" Codebehind="mod_anagraficaMappe.ascx.cs" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_selettore_ajax.ascx" TagName="mod_selettore_ajax" TagPrefix="uc1" %>
<asp:GridView ID="grView" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False"
OnSelectedIndexChanged="grView_SelectedIndexChanged" OnDataBound="grView_DataBound"
DataKeyNames="CodMappa" DataSourceID="ods">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
<asp:Button ID="btnNew" runat="server" OnClick="btnNewFromEmpty_Click" Text='<%# traduci("New") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnReset" runat="server" Text='<%# traduci("Reset") %>' OnClick="btnReset_Click"
Visible="true" />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgSelect" runat="server" CausesValidation="False" CommandName="Select"
ToolTip='<%# traduci("Select") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.seleziona, SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgEdit" runat="server" CausesValidation="False" CommandName="Edit"
ToolTip='<%# traduci("Edit") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica, SteamWare.dimImg.small) %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="CodMappa" SortExpression="CodMappa">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("CodMappa") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("CodMappa") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtCodMappa" runat="server" Text='<%# Bind("CodMappa") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="DescrMappa" SortExpression="DescrMappa">
<EditItemTemplate>
<asp:TextBox ID="txtDescrMappa" runat="server" Text='<%# Bind("DescrMappa") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("DescrMappa") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtDescrMappa" runat="server" Text='<%# Bind("DescrMappa") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnNew" runat="server" OnClick="btnNew_Click" Text='<%# traduci("New") %>' />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate2" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert2" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_XPSTableAdapters.AnagMappeTableAdapter" OnInserting="recuperaFooter"
FilterExpression=" CodMappa LIKE '%{0}%' OR DescrMappa LIKE '%{0}%' " DeleteMethod="DeleteQuery" InsertMethod="Insert"
UpdateMethod="UpdateQuery">
<FilterParameters>
<asp:SessionParameter DefaultValue="*" Name="ricerca" SessionField="valoreCercato" />
</FilterParameters>
<DeleteParameters>
<asp:Parameter Name="Original_CodMappa" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="CodMappa" Type="String" />
<asp:Parameter Name="DescrMappa" Type="String" />
<asp:Parameter Name="Original_CodMappa" Type="String" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="CodMappa" Type="String" />
<asp:Parameter Name="DescrMappa" Type="String" />
</InsertParameters>
</asp:ObjectDataSource>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
@@ -0,0 +1,309 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
using XPS_data;
namespace XPS.WebUserControls
{
public partial class mod_anagraficaMappe : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// imposta errore non cancellabilità per record correlati
/// </summary>
protected void setNoDeletableErrorMessage()
{
// mostro avviso di non cancellabilità...
lblWarning.Text = traduci("notDeletable_hasChild");
lblWarning.Visible = true;
grView.DataBind();
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// annulla inserimento nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblCanc_click(object sender, EventArgs e)
{
// annullo inserimento: nascondo footer, bind controlli...
grView.FooterRow.Visible = false;
}
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView));
grView.SelectedIndex = -1;
grView.DataBind();
lblWarning.Visible = false;
if (eh_resetSelezione != null)
{
eh_resetSelezione(this, new EventArgs());
}
}
/// <summary>
/// gestione evento richiesta nuovo valore (mostra footer, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
// mostro il footer oppure la riga dei dettagli x nuovo...
if (grView.FooterRow != null)
{
grView.FooterRow.Visible = true;
}
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
}
#endregion
#region gestione eventi
public event EventHandler eh_resetSelezione;
public event EventHandler eh_nuovoValore;
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_XPS.AnagMappeDataTable tabella = new DS_XPS.AnagMappeDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "CodMappe";
}
void Mod_filtro1_eh_selValore(object sender, EventArgs e)
{
// ridisegno
}
/// <summary>
/// setta selected alla riga il cui valore key è in session
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowDataBound(object sender, GridViewRowEventArgs e)
{
// se riga di dati...
if (e.Row.RowType == DataControlRowType.DataRow)
{
// ottengo la riga tipizzata...
System.Data.DataRowView _drv = (System.Data.DataRowView)e.Row.DataItem;
DS_XPS.AnagMappeRow riga = (DS_XPS.AnagMappeRow)_drv.Row;
if (SteamWare.memLayer.ML.StringSessionObj(_idxGridView) == riga.CodMappa.ToString())
{
grView.SelectedIndex = e.Row.RowIndex;
}
}
}
/// <summary>
/// gestione evento inserimento nuovo record standard (se ZERO presenti)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNewFromEmpty_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
XPS_data.DS_XPSTableAdapters.AnagMappeTableAdapter taMappe = new XPS_data.DS_XPSTableAdapters.AnagMappeTableAdapter();
// creo 1 obj vuoto...
taMappe.Insert("--", "Nuova mappa");
grView.DataBind();
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// recupera i dati di un nuovo record contenuti nel footer di un gridView;
/// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e)
{
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
{
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
{
tipoColonna = "textBox";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null)
{
tipoColonna = "selAjax";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
case "selAjax":
e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore;
break;
default:
break;
}
tipoColonna = "";
}
}
#endregion
}
}
@@ -0,0 +1,52 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_anagraficaMappe {
/// <summary>
/// grView control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grView;
/// <summary>
/// ods control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
/// <summary>
/// lblNumRec control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumRec;
/// <summary>
/// lblWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarning;
}
}
@@ -0,0 +1,158 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="mod_anagraficaObjSet.ascx.cs"
Inherits="mod_anagraficaObjSet" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_selettore_ajax.ascx" TagName="mod_selettore_ajax" TagPrefix="uc1" %>
<asp:GridView ID="grView" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False"
OnSelectedIndexChanged="grView_SelectedIndexChanged" OnDataBound="grView_DataBound"
DataKeyNames="IdxSet,IdxTipoObj" DataSourceID="ods">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
<asp:Button ID="btnNew" runat="server" OnClick="btnNewFromEmpty_Click" Text='<%# traduci("New") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnReset" runat="server" Text='<%# traduci("Reset") %>' OnClick="btnReset_Click"
Visible="false" />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgSelect" runat="server" CausesValidation="False" CommandName="Select"
ToolTip='<%# traduci("Select") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.seleziona, SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgEdit" runat="server" CausesValidation="False" CommandName="Edit"
ToolTip='<%# traduci("Edit") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica, SteamWare.dimImg.small) %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="IdxSet" SortExpression="IdxSet">
<EditItemTemplate>
<asp:TextBox ID="txtIdxSet" runat="server" Text='<%# Bind("IdxSet") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("IdxSet") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtIdxSet" runat="server" Text='<%# Bind("IdxSet") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="IdxTipoObj" SortExpression="IdxTipoObj">
<EditItemTemplate>
<asp:DropDownList ID="dlIdxTipoObj" runat="server" DataSourceID="odsTipoObj" DataTextField="label"
DataValueField="value" SelectedValue='<%# Bind("IdxTipoObj") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:DropDownList ID="dlIdxTipoObj" runat="server" DataSourceID="odsTipoObj" DataTextField="label"
DataValueField="value" SelectedValue='<%# Bind("IdxTipoObj") %>' Enabled="false" />
</ItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="dlIdxTipoObj" runat="server" DataSourceID="odsTipoObj" DataTextField="label"
DataValueField="value" SelectedValue='<%# Bind("IdxTipoObj") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="MinOcc" SortExpression="MinOcc">
<EditItemTemplate>
<asp:TextBox ID="txtMinOcc" runat="server" Text='<%# Bind("MinOcc") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("MinOcc") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtMinOcc" runat="server" Text='<%# Bind("MinOcc") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="MaxOcc" SortExpression="MaxOcc">
<EditItemTemplate>
<asp:TextBox ID="txtMaxOcc" runat="server" Text='<%# Bind("MaxOcc") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%# Bind("MaxOcc") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtMaxOcc" runat="server" Text='<%# Bind("MaxOcc") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Posizione" SortExpression="Posizione">
<EditItemTemplate>
<asp:TextBox ID="txtPosizione" runat="server" Text='<%# Bind("Posizione") %>' />
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label5" runat="server" Text='<%# Bind("Posizione") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtPosizione" runat="server" Text='<%# Bind("Posizione") %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnNew" runat="server" OnClick="btnNew_Click" Text='<%# traduci("New") %>' />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate2" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert2" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_XPSTableAdapters.ObjectSetTableAdapter" OnInserting="recuperaFooter"
DeleteMethod="DeleteQuery" InsertMethod="Insert" UpdateMethod="UpdateQuery">
<DeleteParameters>
<asp:Parameter Name="Original_IdxSet" Type="String" />
<asp:Parameter Name="Original_IdxTipoObj" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="IdxSet" Type="String" />
<asp:Parameter Name="IdxTipoObj" Type="Int32" />
<asp:Parameter Name="MinOcc" Type="Int32" />
<asp:Parameter Name="MaxOcc" Type="Int32" />
<asp:Parameter Name="Posizione" Type="String" />
<asp:Parameter Name="Original_IdxSet" Type="String" />
<asp:Parameter Name="Original_IdxTipoObj" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="IdxSet" Type="String" />
<asp:Parameter Name="IdxTipoObj" Type="Int32" />
<asp:Parameter Name="MinOcc" Type="Int32" />
<asp:Parameter Name="MaxOcc" Type="Int32" />
<asp:Parameter Name="Posizione" Type="String" />
</InsertParameters>
</asp:ObjectDataSource>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
<asp:ObjectDataSource ID="odsTipoObj" runat="server" SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selTipoObjTableAdapter"
OldValuesParameterFormatString="Original_{0}"></asp:ObjectDataSource>
@@ -0,0 +1,298 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
public partial class mod_anagraficaObjSet : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// imposta errore non cancellabilità per record correlati
/// </summary>
protected void setNoDeletableErrorMessage()
{
// mostro avviso di non cancellabilità...
lblWarning.Text = traduci("notDeletable_hasChild");
lblWarning.Visible = true;
grView.DataBind();
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// annulla inserimento nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblCanc_click(object sender, EventArgs e)
{
// annullo inserimento: nascondo footer, bind controlli...
grView.FooterRow.Visible = false;
}
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView));
grView.SelectedIndex = -1;
grView.DataBind();
lblWarning.Visible = false;
if (eh_resetSelezione != null)
{
eh_resetSelezione(this, new EventArgs());
}
}
/// <summary>
/// gestione evento richiesta nuovo valore (mostra footer, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
// mostro il footer oppure la riga dei dettagli x nuovo...
if (grView.FooterRow != null)
{
grView.FooterRow.Visible = true;
}
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
}
#endregion
#region gestione eventi
public event EventHandler eh_resetSelezione;
public event EventHandler eh_nuovoValore;
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_XPS.ObjectSetDataTable tabella = new DS_XPS.ObjectSetDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "IdxSet";
}
void Mod_filtro1_eh_selValore(object sender, EventArgs e)
{
// ridisegno
}
/// <summary>
/// gestione evento inserimento nuovo record standard (se ZERO presenti)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNewFromEmpty_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
DS_XPSTableAdapters.ObjectSetTableAdapter taObjSet = new DS_XPSTableAdapters.ObjectSetTableAdapter();
// creo 1 obj vuoto...
DS_utilityTableAdapters.v_selTipoObjTableAdapter taV_setTipo = new DS_utilityTableAdapters.v_selTipoObjTableAdapter();
int IdxTipoObj;
try
{
IdxTipoObj=taV_setTipo.GetData()[0].value;
}
catch
{
// mostro errore e ritorno...
lblWarning.Text = traduci("errorNoTipoObjFound");
return;
}
taObjSet.Insert("Nuovo set", IdxTipoObj, 0, 0,"A.");
grView.DataBind();
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// recupera i dati di un nuovo record contenuti nel footer di un gridView;
/// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e)
{
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
{
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
{
tipoColonna = "textBox";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null)
{
tipoColonna = "selAjax";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
case "selAjax":
e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore;
break;
default:
break;
}
tipoColonna = "";
}
}
#endregion
}
@@ -0,0 +1,193 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_anagraficaStati" Codebehind="mod_anagraficaStati.ascx.cs" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_selettore_ajax.ascx" TagName="mod_selettore_ajax" TagPrefix="uc1" %>
<%@ Register Src="mod_filtro.ascx" TagName="mod_filtro" TagPrefix="uc1" %>
<div class="filtro_1">
<asp:Label runat="server" ID="lblTipo" />&nbsp;
<uc1:mod_filtro ID="Mod_filtroTipoObj" runat="server" changeCheckEnabled="false"
changeCheckVisible="false" />
<asp:ObjectDataSource ID="odsTipoObj" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selTipoObjTableAdapter">
</asp:ObjectDataSource>
</div>
<div class="filtro_2">
<asp:Label runat="server" ID="lblMappe" />&nbsp;
<uc1:mod_filtro ID="Mod_filtroMappa" runat="server" changeCheckEnabled="false" changeCheckVisible="false" />
<asp:ObjectDataSource ID="odsMappa" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selTipoMappaTableAdapter">
</asp:ObjectDataSource>
</div>
<asp:GridView ID="grView" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False"
OnSelectedIndexChanged="grView_SelectedIndexChanged" OnDataBound="grView_DataBound"
DataKeyNames="CodMappa,IdxTipoObj,CodStato" DataSourceID="ods">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
<asp:Button ID="btnNew" runat="server" OnClick="btnNewFromEmpty_Click" Text='<%# traduci("New") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnReset" runat="server" Text='<%# traduci("Reset") %>' OnClick="btnReset_Click"
Visible="false" />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgSelect" runat="server" CausesValidation="False" CommandName="Select"
ToolTip='<%# traduci("Select") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.seleziona, SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgEdit" runat="server" CausesValidation="False" CommandName="Edit"
ToolTip='<%# traduci("Edit") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica, SteamWare.dimImg.small) %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="CodStato" SortExpression="CodStato">
<EditItemTemplate>
<asp:TextBox ID="txtCodStato" runat="server" Text='<%# Bind("CodStato") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblCodStato" runat="server" Text='<%# Bind("CodStato") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtCodStato" runat="server" Text='<%# Bind("CodStato") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="DescrStato" SortExpression="DescrStato">
<EditItemTemplate>
<asp:TextBox ID="txtDescrStato" runat="server" Text='<%# Bind("DescrStato") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblDescrStato" runat="server" Text='<%# Bind("DescrStato") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtDescrStato" runat="server" Text='<%# Bind("DescrStato") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="PlugIn" SortExpression="PlugIn">
<EditItemTemplate>
<asp:TextBox ID="txtPlugIn" runat="server" Text='<%# Bind("PlugIn") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblPlugIn" runat="server" Text='<%# Bind("PlugIn") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtPlugIn" runat="server" Text='<%# Bind("PlugIn") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Valore" SortExpression="Valore">
<EditItemTemplate>
<asp:TextBox ID="txtValore" runat="server" Text='<%# Bind("Valore") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblValore" runat="server" Text='<%# Bind("Valore") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtValore" runat="server" Text='<%# Bind("Valore") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="IdxUM" SortExpression="IdxUM">
<EditItemTemplate>
<asp:TextBox ID="txtIdxUM" runat="server" Text='<%# Bind("IdxUM") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblIdxUM" runat="server" Text='<%# Bind("IdxUM") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtIdxUM" runat="server" Text='<%# Bind("IdxUM") %>'></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnNew" runat="server" OnClick="btnNew_Click" Text='<%# traduci("New") %>' />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate2" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert2" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="getByMappaTipoObj" TypeName="DS_XPSTableAdapters.StatiTableAdapter"
OnInserting="recuperaFooter" FilterExpression=" DescrStato LIKE '%{0}%'" DeleteMethod="DeleteQuery"
InsertMethod="Insert" UpdateMethod="UpdateQuery">
<FilterParameters>
<asp:SessionParameter DefaultValue="*" Name="ricerca" SessionField="valoreCercato" />
</FilterParameters>
<DeleteParameters>
<asp:Parameter Name="Original_CodMappa" Type="String" />
<asp:Parameter Name="Original_CodStato" Type="String" />
<asp:Parameter Name="Original_IdxTipoObj" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="CodStato" Type="String" />
<asp:Parameter Name="DescrStato" Type="String" />
<asp:Parameter Name="PlugIn" Type="String" />
<asp:Parameter Name="Valore" Type="String" />
<asp:Parameter Name="IdxUM" Type="String" />
<asp:Parameter Name="Original_CodMappa" Type="String" />
<asp:Parameter Name="Original_CodStato" Type="String" />
<asp:Parameter Name="Original_IdxTipoObj" Type="Int32" />
</UpdateParameters>
<SelectParameters>
<asp:ControlParameter ControlID="Mod_filtroTipoObj" Type="Int32" Name="IdxTipoObj"
PropertyName="valore" DefaultValue="0" />
<asp:ControlParameter ControlID="Mod_filtroMappa" Type="string" Name="CodMappa" PropertyName="valore"
DefaultValue="" />
</SelectParameters>
<InsertParameters>
<asp:Parameter Name="CodMappa" Type="String" />
<asp:Parameter Name="CodStato" Type="String" />
<asp:Parameter Name="IdxTipoObj" Type="Int32" />
<asp:Parameter Name="DescrStato" Type="String" />
<asp:Parameter Name="PlugIn" Type="String" />
<asp:Parameter Name="Valore" Type="String" />
<asp:Parameter Name="IdxUM" Type="String" />
</InsertParameters>
</asp:ObjectDataSource>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
<br />
<asp:Button ID="btnShowClona" runat="server" OnClick="btnShowClona_Click" />
<asp:Panel ID="pnlClona" runat="server" Visible="False" CssClass="clonaUserPerm">
<asp:Button ID="btnClonaStati" runat="server" OnClick="btnClonaStati_Click" />
<uc1:mod_filtro ID="Mod_filtroTipoObjDest" runat="server" changeCheckEnabled="false"
changeCheckVisible="false" />
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selTipoObjTableAdapter">
</asp:ObjectDataSource>
</asp:Panel>
@@ -0,0 +1,415 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
namespace XPS.WebUserControls
{
public partial class mod_anagraficaStati : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// imposta errore non cancellabilità per record correlati
/// </summary>
protected void setNoDeletableErrorMessage()
{
// mostro avviso di non cancellabilità...
lblWarning.Text = traduci("notDeletable_hasChild");
lblWarning.Visible = true;
grView.DataBind();
}
/// <summary>
/// esegue cancellazione record
/// </summary>
protected void doDelete()
{
// posso cancellare...
lblWarning.Visible = false;
ods.Delete();
}
/// <summary>
/// Valida la cancellazione per i dati mostrati dal gridView
/// richiede sia preventivamentedichiarato _idxGridView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected virtual void validaDelete(object sender, ObjectDataSourceMethodEventArgs e)
{
int idx = Convert.ToInt32(e.InputParameters[string.Format("Original_{0}", _idxGridView)]);
if (objIsNotRelated(idx))
{
// annullo cancellazione...
e.Cancel = true;
// seleziono record... metto in session valore idx e poi ridisegno...
SteamWare.memLayer.ML.setSessionVal(_idxGridView, idx);
setNoDeletableErrorMessage();
}
else
{
doDelete();
}
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// annulla inserimento nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblCanc_click(object sender, EventArgs e)
{
// annullo inserimento: nascondo footer, bind controlli...
grView.FooterRow.Visible = false;
}
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView));
grView.SelectedIndex = -1;
grView.DataBind();
lblWarning.Visible = false;
if (eh_resetSelezione != null)
{
eh_resetSelezione(this, new EventArgs());
}
}
/// <summary>
/// gestione evento richiesta nuovo valore (mostra footer, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
// mostro il footer oppure la riga dei dettagli x nuovo...
if (grView.FooterRow != null)
{
grView.FooterRow.Visible = true;
}
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
}
#endregion
#region gestione eventi
public event EventHandler eh_resetSelezione;
public event EventHandler eh_nuovoValore;
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// verifica complessiva non esistenza record child
/// </summary>
/// <param name="idxObj"></param>
/// <returns></returns>
protected bool objIsNotRelated(object idxObj)
{
// !!! FARE vero controllo cancellazione?
return false;// (taRouteVersion.getByOggetti(idxObj.ToString(), vers.ToString()).Rows.Count == 0);
}
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
XPS_data.DS_XPS.AnagStatiDataTable tabella = new XPS_data.DS_XPS.AnagStatiDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// traduco labels
/// </summary>
protected override void traduciObj()
{
base.traduciObj();
lblMappe.Text = traduci("lblMappe");
lblTipo.Text = traduci("lblTipo");
btnShowClona.Text = traduci("btnShowClona");
btnClonaStati.Text = traduci("btnClonaStati");
}
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "CodStato";
if (!Page.IsPostBack)
{
Mod_filtroMappa.ods = odsMappa;
Mod_filtroTipoObj.ods = odsTipoObj;
Mod_filtroTipoObjDest.ods = odsTipoObj;
}
}
void Mod_filtro1_eh_selValore(object sender, EventArgs e)
{
// ridisegno
}
/// <summary>
/// setta selected alla riga il cui valore key è in session
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowDataBound(object sender, GridViewRowEventArgs e)
{
// se riga di dati...
if (e.Row.RowType == DataControlRowType.DataRow)
{
// ottengo la riga tipizzata...
System.Data.DataRowView _drv = (System.Data.DataRowView)e.Row.DataItem;
XPS_data.DS_XPS.AnagStatiRow riga = (XPS_data.DS_XPS.AnagStatiRow)_drv.Row;
if (SteamWare.memLayer.ML.StringSessionObj(_idxGridView) == riga.CodStato.ToString())
{
grView.SelectedIndex = e.Row.RowIndex;
}
}
}
/// <summary>
/// gestione evento inserimento nuovo record standard (se ZERO presenti)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNewFromEmpty_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
XPS_data.DS_XPSTableAdapters.AnagStatiTableAdapter taStati = new XPS_data.DS_XPSTableAdapters.AnagStatiTableAdapter();
// creo 1 obj vuoto...
taStati.Insert("-", Mod_filtroTipoObj.valore, "Nuovo stato");
//taStati.Insert(Mod_filtroMappa.valore, "-", Mod_filtroTipoObj.valoreInt, "Nuovo stato", "", "", "");
grView.DataBind();
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// recupera i dati di un nuovo record contenuti nel footer di un gridView;
/// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e)
{
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
{
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
{
tipoColonna = "textBox";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null)
{
tipoColonna = "selAjax";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
case "selAjax":
e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore;
break;
default:
break;
}
tipoColonna = "";
}
e.InputParameters["CodMappa"] = Mod_filtroMappa.valore;
e.InputParameters["IdxTipoObj"] = Mod_filtroTipoObj.valore;
}
/// <summary>
/// mostra pannello cloning
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnShowClona_Click(object sender, EventArgs e)
{
setClonaVisibility();
}
/// <summary>
/// imposta vilibilità pannello cloning e scritta pulsante...
/// </summary>
private void setClonaVisibility()
{
if (pnlClona.Visible)
{
btnShowClona.Text = traduci("btnShowClona");
lblWarning.Visible = false;
}
else
{
btnShowClona.Text = traduci("btnHideClona");
}
pnlClona.Visible = !pnlClona.Visible;
}
/// <summary>
/// chiamo stored di cloning stati...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnClonaStati_Click(object sender, EventArgs e)
{
// verifico siano diverse le selezioni...
if (Mod_filtroTipoObj.valoreInt != Mod_filtroTipoObjDest.valoreInt)
{
XPS_data.DS_XPSTableAdapters.SP taSP = new XPS_data.DS_XPSTableAdapters.SP();
taSP.sp_clonaStati(Mod_filtroMappa.valore, Mod_filtroTipoObj.valoreInt, Mod_filtroTipoObjDest.valoreInt);
lblWarning.Visible = false;
// nascondo...
setClonaVisibility();
}
else
{
lblWarning.Text = traduci("erroreSelDest");
lblWarning.Visible = true;
}
}
#endregion
}
}
@@ -0,0 +1,151 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_anagraficaStati {
/// <summary>
/// lblTipo control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblTipo;
/// <summary>
/// Mod_filtroTipoObj control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro Mod_filtroTipoObj;
/// <summary>
/// odsTipoObj control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsTipoObj;
/// <summary>
/// lblMappe control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblMappe;
/// <summary>
/// Mod_filtroMappa control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro Mod_filtroMappa;
/// <summary>
/// odsMappa control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsMappa;
/// <summary>
/// grView control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grView;
/// <summary>
/// ods control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
/// <summary>
/// lblNumRec control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumRec;
/// <summary>
/// lblWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarning;
/// <summary>
/// btnShowClona control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnShowClona;
/// <summary>
/// pnlClona control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlClona;
/// <summary>
/// btnClonaStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnClonaStati;
/// <summary>
/// Mod_filtroTipoObjDest control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro Mod_filtroTipoObjDest;
/// <summary>
/// ObjectDataSource1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ObjectDataSource1;
}
}
@@ -0,0 +1,19 @@
<%@ Control Language="C#" AutoEventWireup="true" Inherits="XPS.WebUserControls.mod_barcode" Codebehind="mod_barcode.ascx.cs" %>
<div style="text-align: center; font-size:20pt;;">
<div>
<asp:TextBox runat="server" ID="txtComando" TextMode="Password" Width="200px"
ontextchanged="txtComando_TextChanged" />
</div>
<asp:Panel runat="server" ID="pnlBarcodeBox" CssClass="">
<div style="background-color: #FFE800; padding: 8px; margin: 1px;">
<asp:Label runat="server" ID="lblInput" Text="" />
</div>
<div style="background-color:#FFC500; padding:8px; margin:1px;">
<asp:Label runat="server" ID="lblValore" Text="" />
</div>
<div style="background-color: #FF7700; padding: 8px; margin: 1px; ">
<asp:Label runat="server" ID="lblRichiesta" Text="" Font-Bold="true" />
</div>
<asp:Label ID="lblBrowser" runat="server"></asp:Label>
</asp:Panel>
</div>
@@ -0,0 +1,239 @@
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SteamWare;
namespace XPS.WebUserControls
{
public partial class mod_barcode : ApplicationUserControl
{
#region area protected
/// <summary>
/// dictionary comandi ammessi
/// </summary>
protected Dictionary<string, string> _comandi = new Dictionary<string, string>();
/// <summary>
/// dictionary dei valori ammessi
/// </summary>
protected Dictionary<string, string> _tabValori = new Dictionary<string, string>();
/// <summary>
/// oggetto comando locale alla classe
/// </summary>
protected inputComando comando
{
get
{
inputComando answ;
if (memLayer.ML.isInSessionObject("barcodeCmd"))
{
answ = (inputComando)memLayer.ML.objSessionObj("barcodeCmd");
}
else
{
answ = new inputComando();
}
return answ;
}
set
{
memLayer.ML.setSessionVal("barcodeCmd", value, false);
}
}
/// <summary>
/// al caricamento della pagina...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected override void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
DetectAgent();
myInitialize();
}
/// <summary>
/// inizializzazione specifica barcode
/// </summary>
private void myInitialize()
{
lblInput.Text = traduci("PregoInserireBarcode");
if (!Page.IsPostBack) comando = new inputComando();
txtComando.Focus();
}
/// <summary>
/// barcode completato con invio...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtComando_TextChanged(object sender, EventArgs e)
{
// verifico se sia un comando o un valore valido...
isInputEvent();
isValore();
// verifico se c'è stato input evento
if (comando.isValid)
{
if (comando.currCmdIn != "")
{
txtInput2show = comando.descrComando;
}
else
{
txtInput2show = "---";
}
if (comando.valore != "")
{
txtVal2show = comando.valoreTrad;
}
else
{
txtVal2show = "---";
}
if (eh_comandoRegistrato != null)
{
eh_comandoRegistrato(this, new EventArgs());
}
}
else
{
lblInput.Text = traduci("ComandoSconosciuto");
lblValore.Text = txtComando.Text;
comando = new inputComando();
}
txtComando.Text = "";
}
/// <summary>
/// verifico se sia un valore compreso nell'elenco fornito
/// </summary>
private void isValore()
{
if (_tabValori.ContainsKey(txtComando.Text)) // verifico se il comando digitato esista...
{
comando.isValid = true;
comando.valore = txtComando.Text;
_tabValori.TryGetValue(txtComando.Text, out comando.valoreTrad);
}
}
/// <summary>
/// verifica se il comando inserito sia valido
/// </summary>
private void isInputEvent()
{
if (_comandi.ContainsKey(txtComando.Text)) // verifico se il comando digitato esista...
{
comando.isValid = true;
// salvo comando precedente (se c'è...)
comando.prevCmdIn = comando.currCmdIn;
comando.descrComandoPrev = comando.descrComando;
comando.currCmdIn = txtComando.Text;
_comandi.TryGetValue(txtComando.Text, out comando.descrComando);
}
}
/// <summary>
/// verifica quale browser usato e applica css corretto al div attorno al box
/// </summary>
private void DetectAgent()
{
System.Web.HttpBrowserCapabilities browser = Request.Browser;
if (browser.Browser == "IE")
{
pnlBarcodeBox.CssClass = "barcodeBoxIE";
}
else
{
pnlBarcodeBox.CssClass = "barcodeBoxOther";
}
}
#endregion
#region area public
/// <summary>
/// elenco dei comandi riconosciuti
/// </summary>
public Dictionary<string, string> comandiAmmessi
{
get
{
return _comandi;
}
set
{
_comandi = value;
}
}
/// <summary>
/// tabella di valori ammissibili
/// </summary>
public Dictionary<string, string> tabValori
{
get
{
return _tabValori;
}
set
{
_tabValori = value;
}
}
/// <summary>
/// evento comando registrato
/// </summary>
public event EventHandler eh_comandoRegistrato;
/// <summary>
/// comando registrato dal barcode
/// </summary>
public inputComando comandoRegistrato
{
get
{
return comando;
}
}
/// <summary>
/// scrive nella label input
/// </summary>
public string txtInput2show
{
set
{
lblInput.Text = value;
}
}
/// <summary>
/// scrive nella label valore
/// </summary>
public string txtVal2show
{
set
{
lblValore.Text = value;
}
}
/// <summary>
/// scrive nella label richiesta
/// </summary>
public string txtRich2show
{
set
{
lblRichiesta.Text = value;
}
}
/// <summary>
/// reset del controllo
/// </summary>
public void resetMe()
{
comando = new inputComando();
txtInput2show = "Prego inserire barcode";
txtVal2show = "";
txtRich2show = "";
}
#endregion
}
}
+70
View File
@@ -0,0 +1,70 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_barcode {
/// <summary>
/// txtComando control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtComando;
/// <summary>
/// pnlBarcodeBox control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlBarcodeBox;
/// <summary>
/// lblInput control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblInput;
/// <summary>
/// lblValore control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblValore;
/// <summary>
/// lblRichiesta control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblRichiesta;
/// <summary>
/// lblBrowser control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblBrowser;
}
}
@@ -0,0 +1,31 @@
<%@ Control Language="C#" AutoEventWireup="true" Inherits="XPS.WebUserControls.mod_chLang" Codebehind="mod_chLang.ascx.cs" %>
<link href="~/Style.css" rel="stylesheet" type="text/css" />
<table id="table1" runat="server" cellspacing="1" cellpadding="1" class="centerMenu">
<tr class="ctrHeaderPager">
<td>
<asp:Label id="lblScegli" runat="server" ></asp:Label>
</td>
</tr>
<tr>
<td>
<asp:DataList id="dataListLingue" runat="server" DataKeyField="Lingua" DataSourceid="ods_lingueApp" Width="100%" OnSelectedIndexChanged="dataListLingue_SelectedIndexChanged">
<ItemStyle CssClass="ctrRowStyle" />
<AlternatingItemStyle CssClass="ctrAltRowStyle" />
<ItemTemplate>
<asp:LinkButton id="Linkbutton1" runat="server" name="Linkbutton1" CausesValidation="false" CommandName="Select">
<img alt='<%# DataBinder.Eval(Container, "DataItem.Lingua") %>' src='./images/flag-<%# DataBinder.Eval(Container, "DataItem.Lingua") %>.png' />
&nbsp;
<asp:Label id="LinguaLabel" runat="server" Text='<%# Eval("Lingua") %>'></asp:Label>
&nbsp;-&nbsp;
<asp:Label id="DescrizioneLinguaLabel" runat="server" Text='<%# Eval("DescrizioneLingua") %>'></asp:Label>
&nbsp;
<img alt='<%# DataBinder.Eval(Container, "DataItem.Lingua") %>' src='./images/flag-<%# DataBinder.Eval(Container, "DataItem.Lingua") %>.png' />
</asp:LinkButton>
</ItemTemplate>
</asp:DataList>
<asp:ObjectDataSource id="ods_lingueApp" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetLingue" TypeName="selData">
</asp:ObjectDataSource>
</td>
</tr>
</table>
@@ -0,0 +1,32 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
namespace XPS.WebUserControls
{
public partial class mod_chLang : ApplicationUserControl
{
protected void dataListLingue_SelectedIndexChanged(object sender, EventArgs e)
{
// impongo ad oggetto user la lingua selezionata...
user_std.UtSn.lingua = dataListLingue.SelectedValue.ToString();
// salvo richiesta udpate in sessione...
SteamWare.memLayer.ML.setSessionVal("doUpdateNow", "true");
user_std.UtSn.ricaricaMappaSito();
Response.Redirect(_paginaCorrente);
}
protected override void traduciObj()
{
lblScegli.Text = traduci("scegliLingua");
}
}
}
+52
View File
@@ -0,0 +1,52 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_chLang {
/// <summary>
/// table1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable table1;
/// <summary>
/// lblScegli control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblScegli;
/// <summary>
/// dataListLingue control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DataList dataListLingue;
/// <summary>
/// ods_lingueApp control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods_lingueApp;
}
}
@@ -0,0 +1,55 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_completate" Codebehind="mod_completate.ascx.cs" %>
<asp:TextBox runat="server" ID="txtDataCorr" Visible="false" Text="..." />
<asp:Label runat="server" ID="lblCompletate" CssClass="ctrHeaderPagerGreen" Width="200px" />
<asp:GridView ID="grViewCompletate" runat="server" AutoGenerateColumns="False" DataKeyNames="Cod"
DataSourceID="odsCompletate" Font-Size="8pt" Width="100%">
<RowStyle CssClass="ctrRowStyleGreen" />
<AlternatingRowStyle CssClass="ctrAltRowStyleGreen" />
<EditRowStyle CssClass="ctGreenitRowStyleGreen" />
<SelectedRowStyle CssClass="ctrSelRowStyleGreen" />
<FooterStyle CssClass="ctrFooterGreen" />
<PagerStyle CssClass="ctrHeaderPagerGreen" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPagerGreen" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyleGreen" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
</EmptyDataTemplate>
<Columns>
<asp:BoundField DataField="Cliente" HeaderText="Cliente" SortExpression="Cliente"
ReadOnly="true" ItemStyle-Width="150px" />
<asp:TemplateField HeaderText="DDT" SortExpression="DDT" ItemStyle-Width="80px">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("DDT") %>' ToolTip='<%# Eval("Cod")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="DataDDT" HeaderText="DataDDT" SortExpression="DataDDT"
ReadOnly="true" DataFormatString="{0:dd/MM/yy}" ItemStyle-Width="60px" />
<asp:BoundField DataField="CodCli" HeaderText="Ciclo" SortExpression="CodCli" ReadOnly="true"
ItemStyle-Width="40px" />
<asp:BoundField DataField="Stato" HeaderText="Stato" SortExpression="CodStato" ReadOnly="true"
ItemStyle-Width="180px" />
<asp:BoundField DataField="descrizione" HeaderText="descrizione" SortExpression="descrizione"
ReadOnly="true" ItemStyle-Width="120px" />
<asp:BoundField DataField="Peso" HeaderText="Peso" ReadOnly="True" SortExpression="Peso"
DataFormatString="{0:N2} kg" ItemStyle-Width="60px" />
<asp:BoundField DataField="Qta" HeaderText="Qta" SortExpression="Qta" ReadOnly="true"
ItemStyle-Width="30px" />
<asp:BoundField DataField="DataArrivo" HeaderText="DataArrivo" SortExpression="DataArrivo"
ReadOnly="true" DataFormatString="{0:dd/MM/yy HH:mm}" ItemStyle-Width="100px" />
<asp:BoundField DataField="DataPrevista" HeaderText="DataPrevista" SortExpression="DataPrevista"
ReadOnly="true" DataFormatString="{0:dd/MM/yy HH:mm}" ItemStyle-Width="100px" />
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="odsCompletate" runat="server" OldValuesParameterFormatString="original_{0}"
SelectMethod="getByCodStato" TypeName="DS_applicazioneTableAdapters.v_ULPTableAdapter"
FilterExpression=" (Cliente LIKE '%{0}%' OR DDT LIKE '%{0}%' OR Descrizione LIKE '%{0}%' ) AND (CodCli = '{1}')">
<FilterParameters>
<asp:SessionParameter DefaultValue="*" Name="ricerca" SessionField="valoreCercato" />
<asp:ControlParameter ControlID="ddlCiclo" Name="Ciclo" PropertyName="SelectedValue"
Type="String" />
</FilterParameters>
<SelectParameters>
<asp:Parameter DefaultValue="05" Name="CodStato" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
@@ -0,0 +1,39 @@
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SteamWare;
namespace XPS.WebUserControls
{
public partial class mod_completate : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
lblCompletate.Text = traduci("lblCommCompletate");
}
public DateTime dataRif
{
get
{
return Convert.ToDateTime(txtDataCorr.Text);
}
set
{
txtDataCorr.Text = value.ToString();
odsCompletate.DataBind();
}
}
public void doUpdate()
{
odsCompletate.DataBind();
}
public string traduci(object lemma)
{
return user_std.UtSn.Traduci(lemma.ToString());
}
}
}
@@ -0,0 +1,52 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_completate {
/// <summary>
/// txtDataCorr control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtDataCorr;
/// <summary>
/// lblCompletate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblCompletate;
/// <summary>
/// grViewCompletate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grViewCompletate;
/// <summary>
/// odsCompletate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsCompletate;
}
}
@@ -0,0 +1,132 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_dettComm" Codebehind="mod_dettComm.ascx.cs" %>
<%@ Register Src="mod_filtro.ascx" TagName="mod_filtro" TagPrefix="uc1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_navPath.ascx" TagName="mod_navPath" TagPrefix="uc2" %>
<%@ Register Src="mod_logStati.ascx" TagName="mod_logStati" TagPrefix="uc3" %>
<div class="navBar">
<uc2:mod_navPath ID="mod_navPath1" runat="server" EnableViewState="true" separatore=">" />
</div>
<asp:Label runat="server" ID="lblRowsDDT" CssClass="ctrHeaderPager" Width="150px" />
<asp:GridView ID="grView" runat="server" AutoGenerateColumns="False" DataSourceID="ods"
DataKeyNames="Cod" AllowPaging="True" AllowSorting="True" OnSelectedIndexChanged="grView_SelectedIndexChanged"
OnDataBound="grView_DataBound" OnRowUpdating="grView_RowUpdating" Width="100%">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnReset" runat="server" Text='<%# traduci("Reset") %>' OnClick="btnReset_Click"
Visible="true" />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgSelect" runat="server" CausesValidation="False" CommandName="Select"
ToolTip='<%# traduci("Select") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.seleziona, SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgClona" runat="server" CausesValidation="False" ToolTip='<%# traduci("clonaRow") %>'
ImageUrl='<%# imgPath(SteamWare.tipoImg.clona , SteamWare.dimImg.small) %>' CommandArgument="clonaObj"
CommandName="Update" OnClick="imgClonaRow_Click" Visible='<%# isAccettVisible(Eval("CodStato")) %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="DDT" SortExpression="DDT">
<EditItemTemplate>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("DDT") %>' ToolTip='<%# Eval("Cod")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Posizione" HeaderText="Riga" SortExpression="Posizione"
ReadOnly="True" />
<asp:TemplateField HeaderText="Stato" SortExpression="Stato" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:ImageButton ID="imgMostraLogStati" runat="server" CausesValidation="False" CommandName="Select"
OnClick="imgMostraLogStati_Click" ToolTip='<%# traduci("MostraLogStati")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.notepad , SteamWare.dimImg.small) %>' />
<asp:Label ID="Label2" runat="server" Text='<%# Bind("Stato") %>'></asp:Label>
<div style="font-size: smaller; color: #57aa57;">
-->
<asp:Label ID="Label4" runat="server" Text='<%# Bind("maxStato") %>' /></div>
</ItemTemplate>
<EditItemTemplate>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgEdit" runat="server" CausesValidation="False" CommandName="Edit"
ToolTip='<%# traduci("Edit") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica, SteamWare.dimImg.small) %>'
Visible='<%# isAccettVisible(Eval("CodStato")) %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="descrizione" SortExpression="descrizione">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("descrizione") %>' Width="30em"
TextMode="MultiLine" Rows="5"></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("descrizione") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Peso" HeaderText="Peso" SortExpression="Peso" ReadOnly="True"
DataFormatString="{0:N2} kg" />
<asp:BoundField DataField="Qta" HeaderText="Qta" SortExpression="Qta" ReadOnly="True" />
<asp:BoundField DataField="Colli" HeaderText="Colli" SortExpression="Colli" ReadOnly="True" />
<asp:BoundField DataField="DataArrivo" HeaderText="DataArrivo" SortExpression="DataArrivo"
ReadOnly="True" DataFormatString="{0:dd/MM/yy HH:mm}" />
<asp:BoundField DataField="DataPrevista" HeaderText="DataPrevista" SortExpression="DataPrevista"
ReadOnly="True" DataFormatString="{0:dd/MM/yy HH:mm}" />
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>'
Visible='<%# userCanDel(Eval("CodStato"),Eval("IdxObjMamma"),Eval("Posizione")) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="getByCodMamma" TypeName="DS_applicazioneTableAdapters.v_righeTableAdapter"
DeleteMethod="sp_delRow" UpdateMethod="UpdateQuery" OnDeleted="ods_Deleted">
<DeleteParameters>
<asp:Parameter Name="Original_Cod" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="descrizione" Type="String" />
<asp:Parameter Name="Original_Cod" Type="String" />
</UpdateParameters>
<SelectParameters>
<asp:SessionParameter DefaultValue="0" Name="CodMamma" SessionField="CodDDT_sel"
Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
<asp:Panel ID="pnlLogStati" Visible="false" runat="server">
<uc3:mod_logStati ID="mod_logStati1" runat="server" />
</asp:Panel>
@@ -0,0 +1,401 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
using XPS_data;
namespace XPS.WebUserControls
{
public partial class mod_dettComm : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
#endregion
#region gestione eventi
public event EventHandler eh_resetSelezione;
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_applicazione.v_commesseDataTable tabella = new DS_applicazione.v_commesseDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// modo d'uso PRIVATE del controllo tra i vari magazzino/segreteria/produzione/direzione
/// </summary>
protected modoXPS_Equa _currMode = modoXPS_Equa.segreteria;
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "CodRow";
updateNavBar();
}
/// <summary>
/// aggiorno navbar
/// </summary>
protected void updateNavBar()
{
// verifico se c'è selezione, attivo filtraggio ed aggiorno...
if (memLayer.ML.isInSessionObject("CodDDT_sel"))
{
mod_navPath1.valore = memLayer.ML.StringSessionObj("CodDDT_sel");
mod_navPath1.tooltip = traduci("go2commesse");
// traduco...
mod_navPath1.linkText = traduci("ElencoComm");
mod_navPath1.linkURL = memLayer.ML.StringSessionObj("returnPage");
}
}
protected override void traduciObj()
{
base.traduciObj();
lblRowsDDT.Text = traduci("lblRowsDDT");
}
/// <summary>
/// mostra/nasconde pannello nuovo
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnShowNew_Click(object sender, EventArgs e)
{
scambiaVisibPnlNew();
}
private void scambiaVisibPnlNew()
{
// in base alla visibilità indico il testo corretto e seleziono o meno il filtro...
#if false
if (!pnlNew.Visible)
{
btnShowNew.Text = traduci("btnHideNew");
mf_cliNew.ods = odsFiltroClienti;
}
else
{
btnShowNew.Text = traduci("btnShowNew");
}
pnlNew.Visible = !pnlNew.Visible;
#endif
}
/// <summary>
/// creazione di un nuovo set...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNewComm_Click(object sender, EventArgs e)
{
#if false
// creazione di un nuovo set...
DS_applicazioneTableAdapters.v_commesseTableAdapter taComm = new DS_applicazioneTableAdapters.v_commesseTableAdapter();
taComm.sp_creaSetObj(DateTime.Now.ToString("yyyyMMdd_hhmmss"), "EQUA", mf_cliNew.valore, txtDDT.Text, txtNome.Text, user_std.UtSn.utente, txtDescr.Text);
// nascondo tutto...
txtNome.Text = "";
scambiaVisibPnlNew();
// aggiorno pannello...
grView.DataBind();
#endif
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// gestione evento richiesta nuovo valore (mostra footer, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
// mostro il footer oppure la riga dei dettagli x nuovo...
if (grView.FooterRow != null)
{
grView.FooterRow.Visible = true;
}
#if false
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
#endif
}
/// <summary>
/// salvo in session che il prox comando è clonare...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgMostraLogStati_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "mostraLog");
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
string _comando = "";
if (SteamWare.memLayer.ML.isInSessionObject("nextObjCommand"))
{
_comando = SteamWare.memLayer.ML.StringSessionObj("nextObjCommand");
SteamWare.memLayer.ML.emptySessionVal("nextObjCommand");
}
switch (_comando)
{
case "mostraLog": // non è vero select ma un show del log di cambio stato
pnlLogStati.Visible = true;
mod_logStati1.idxObj = grView.SelectedValue.ToString();
break;
default: // è select...
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue.ToString(), true);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
break;
}
}
/// <summary>
/// salvo in session che il prox comando è clonare...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgClonaRow_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "clonaRow");
}
/// <summary>
/// in caso di aggiornamento verifico se sia salvato un comando clona...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
// quale comando?
// carico l'idx dell'oggetto
string _idxCiclo = e.Keys["Cod"].ToString();
string _comando = "";
if (SteamWare.memLayer.ML.isInSessionObject("nextObjCommand"))
{
_comando = SteamWare.memLayer.ML.StringSessionObj("nextObjCommand");
SteamWare.memLayer.ML.emptySessionVal("nextObjCommand");
}
// verifico il tipo di richiesta (clona o update normale)
switch (_comando)
{
case "clonaRow":
XPS_data.DS_applicazioneTableAdapters.v_righeTableAdapter taRiga = new XPS_data.DS_applicazioneTableAdapters.v_righeTableAdapter();
taRiga.sp_clonaRowObj(_idxCiclo);
grView.EditIndex = -1;
grView.DataBind();
// blocco update!
e.Cancel = true;
break;
default:
// faccio update!
break;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdateNoReset()
{
grView.DataBind();
}
/// <summary>
/// restituisce se sia visibile il controllo di accettazione...
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool isAccettVisible(object codStato)
{
bool answ = true;
if (codStato.ToString().IndexOf("01") < 0) answ = false;
return answ;
}
/// <summary>
/// restituisce se rimangano altri valori a pari idxObjMamma - ovvero non sto cancellando l'ultima riga... che è vietato...
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool otherRemains(object IdxObjMamma)
{
bool answ = false;
int sisters = Convert.ToInt32(XPS_data.XPS.obj.taObj.countSisters(IdxObjMamma.ToString()));
if (sisters > 1) answ = true;
return answ;
}/// <summary>
/// restituisce true se sia l'ultimo oggetto del suo tipo (max posizione x codice mamma...)
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool lastSister(object IdxObjMamma, object posizione)
{
bool answ = false;
string maxPos = XPS_data.XPS.obj.taObj.lastSister(IdxObjMamma.ToString()).ToString();
if (Convert.ToInt32(maxPos) == Convert.ToInt32(posizione)) answ = true;
return answ;
}
/// <summary>
/// determina se l'utente possa cancellare
/// </summary>
/// <returns></returns>
public bool userCanDel(object codStato, object IdxObjMamma, object posizione)
{
return (isAccettVisible(codStato) && otherRemains(IdxObjMamma) && lastSister(IdxObjMamma, posizione));
}
/// <summary>
/// imposta il modo d'uso del controllo tra i vari magazzino/segreteria/produzione/direzione
/// </summary>
public modoXPS_Equa currMode
{
get
{
return _currMode;
}
set
{
_currMode = value;
}
}
protected void ods_Deleted(object sender, ObjectDataSourceStatusEventArgs e)
{
resetSelezione();
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
grView.SelectedIndex = -1;
grView.DataBind();
pnlLogStati.Visible = false;
if (eh_resetSelezione != null)
{
eh_resetSelezione(this, new EventArgs());
}
}
#endregion
}
}
@@ -0,0 +1,88 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_dettComm {
/// <summary>
/// mod_navPath1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_navPath mod_navPath1;
/// <summary>
/// lblRowsDDT control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblRowsDDT;
/// <summary>
/// grView control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grView;
/// <summary>
/// ods control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
/// <summary>
/// lblNumRec control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumRec;
/// <summary>
/// lblWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarning;
/// <summary>
/// pnlLogStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlLogStati;
/// <summary>
/// mod_logStati1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_logStati mod_logStati1;
}
}
@@ -0,0 +1,54 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_dettaglioGiornaliero" Codebehind="mod_dettaglioGiornaliero.ascx.cs" %>
<asp:Label runat="server" ID="lblData" CssClass="ctrHeaderPager" Width="200px" Text="..." />
<asp:TextBox runat="server" ID="txtDataCorr" Visible="false" Text="..." />
<asp:GridView ID="grViewGiorno" runat="server" AutoGenerateColumns="false" DataKeyNames="Cod"
DataSourceID="odsCorr" Width="100%" Font-Size="8pt" >
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctitRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# SteamWare.user_std.UtSn.Traduci("noRecord") %>' />
</EmptyDataTemplate>
<Columns>
<asp:BoundField DataField="Cliente" HeaderText="Cliente" SortExpression="Cliente"
ReadOnly="true" ItemStyle-Width="150px"/>
<asp:TemplateField HeaderText="DDT" SortExpression="DDT" ItemStyle-Width="80px">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("DDT") %>' ToolTip='<%# Eval("Cod")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="DataDDT" HeaderText="DataDDT" SortExpression="DataDDT"
ReadOnly="true" DataFormatString="{0:dd/MM/yy}" ItemStyle-Width="60px" />
<asp:BoundField DataField="CodCli" HeaderText="Ciclo" SortExpression="CodCli" ReadOnly="true" ItemStyle-Width="40px" />
<asp:BoundField DataField="Stato" HeaderText="Stato" SortExpression="CodStato" ReadOnly="true" ItemStyle-Width="180px" />
<asp:BoundField DataField="descrizione" HeaderText="descrizione" SortExpression="descrizione"
ReadOnly="true" ItemStyle-Width="120px" />
<asp:BoundField DataField="Peso" HeaderText="Peso" ReadOnly="True" SortExpression="Peso"
DataFormatString="{0:N2} kg" ItemStyle-Width="60px" />
<asp:BoundField DataField="Qta" HeaderText="Qta" SortExpression="Qta" ReadOnly="true" ItemStyle-Width="30px"/>
<asp:BoundField DataField="DataArrivo" HeaderText="DataArrivo" SortExpression="DataArrivo"
ReadOnly="true" DataFormatString="{0:dd/MM/yy HH:mm}" ItemStyle-Width="100px" />
<asp:BoundField DataField="DataPrevista" HeaderText="DataPrevista" SortExpression="DataPrevista"
ReadOnly="true" DataFormatString="{0:dd/MM/yy HH:mm}" ItemStyle-Width="100px" />
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="odsCorr" runat="server" OldValuesParameterFormatString="original_{0}"
SelectMethod="getOnlyOnDate" TypeName="DS_applicazioneTableAdapters.v_ULPTableAdapter"
FilterExpression=" (Cliente LIKE '%{0}%' OR DDT LIKE '%{0}%' OR Descrizione LIKE '%{0}%' ) AND (CodCli = '{1}')">
<FilterParameters>
<asp:SessionParameter DefaultValue="*" Name="ricerca" SessionField="valoreCercato" />
<asp:ControlParameter ControlID="ddlCiclo" Name="Ciclo" PropertyName="SelectedValue"
Type="String" />
</FilterParameters>
<SelectParameters>
<asp:ControlParameter ControlID="txtDataCorr" Name="DataRif" PropertyName="Text"
Type="DateTime" />
<asp:Parameter DefaultValue="05" Name="MaxStato" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
@@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SteamWare;
namespace XPS.WebUserControls
{
public partial class mod_dettaglioGiornaliero : System.Web.UI.UserControl
{
public DateTime dataRif
{
get
{
return Convert.ToDateTime(txtDataCorr.Text);
}
set
{
txtDataCorr.Text = value.ToString();
lblData.Text = string.Format("{0:ddd dd/MM/yyyy}", value);
odsCorr.DataBind();
}
}
public void doUpdate()
{
odsCorr.DataBind();
}
}
}
@@ -0,0 +1,52 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_dettaglioGiornaliero {
/// <summary>
/// lblData control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblData;
/// <summary>
/// txtDataCorr control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtDataCorr;
/// <summary>
/// grViewGiorno control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grViewGiorno;
/// <summary>
/// odsCorr control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsCorr;
}
}
@@ -0,0 +1 @@
<%@ Control Language="C#" AutoEventWireup="true" Inherits="XPS.WebUserControls.mod_downloadFont" Codebehind="mod_downloadFont.ascx.cs" %>
@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class mod_downloadFont : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
@@ -0,0 +1,16 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_downloadFont {
}
}
@@ -0,0 +1,84 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_elencoBarcode" Codebehind="mod_elencoBarcode.ascx.cs" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<div style="font-size: larger; float: left;">
<link href="~/Style.css" rel="stylesheet" type="text/css" />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="ods">
<Columns>
<asp:BoundField DataField="descrComando" HeaderText="Comando Inviato" SortExpression="descrComando" />
<asp:TemplateField HeaderText="Barcode" SortExpression="CodEvento">
<ItemTemplate>
<div style="padding: 40px; text-align: center;">
<asp:Label ID="Label1" runat="server" Text='<%# barcodeFormat(Eval("CodEvento")) %>'
CssClass="barcodeFont" />
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
<div style="float: left; margin-left: 150px;">
Scarica l'elenco in <a href="docs/ElencoBarcodeXPS.pdf">formato pdf</a><br />
<br />
<a href="docs/FRE3OF9X.TTF">Scarica il font</a> per visualizzare correttamente i
barcode<br />
<br />
<asp:LinkButton ID="lnkHowTo" runat="server"><i style="text-decoration:none;">Come installare il font</i></asp:LinkButton>
<cc1:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="lnkHowTo"
runat="server" PopupControlID="pnlInstallFont" BackgroundCssClass="modalBackground"
CancelControlID="lnkEsci">
</cc1:ModalPopupExtender>
<asp:Panel runat="server" ID="pnlInstallFont" Visible="true">
<p style="color: White; font-weight: bold;">
Per installare il font:</p>
<cc1:TabContainer ID="TabContainer1" runat="server" ActiveTabIndex="0">
<cc1:TabPanel ID="TabPanel1" runat="server" HeaderText="Windows">
<ContentTemplate>
Copiare il font nella cartella C:\Windows\Font (potrebbero essere necessari i permessi
di amministratore
<img src="images/installWindows.png" width="750px" /></ContentTemplate>
</cc1:TabPanel>
<cc1:TabPanel ID="TabPanel2" runat="server" HeaderText="Macintosh">
<ContentTemplate>
Fare doppio clic sul font e verrà installato automaticamente</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
<br /><br />
<asp:LinkButton ID="lnkEsci" runat="server"><div style="text-decoration:none; color:White; font-weight:bold; text-align:center;">Esci</div></asp:LinkButton>
</asp:Panel>
</div>
<asp:ObjectDataSource ID="ods" runat="server"
OldValuesParameterFormatString="original_{0}" SelectMethod="getByCodMappa"
TypeName="DS_applicazioneTableAdapters.TraEv2StatiTableAdapter"
DeleteMethod="Delete" InsertMethod="Insert" UpdateMethod="Update">
<DeleteParameters>
<asp:Parameter Name="Original_CodMappa" Type="String" />
<asp:Parameter Name="Original_CodObj" Type="String" />
<asp:Parameter Name="Original_CodStato" Type="String" />
<asp:Parameter Name="Original_CodEvento" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="NextCodStato" Type="String" />
<asp:Parameter Name="CmdPlugin" Type="String" />
<asp:Parameter Name="text2show" Type="String" />
<asp:Parameter Name="descrComando" Type="String" />
<asp:Parameter Name="Original_CodMappa" Type="String" />
<asp:Parameter Name="Original_CodObj" Type="String" />
<asp:Parameter Name="Original_CodStato" Type="String" />
<asp:Parameter Name="Original_CodEvento" Type="String" />
</UpdateParameters>
<SelectParameters>
<asp:Parameter DefaultValue="E_BC" Name="CodMappa" Type="String" />
</SelectParameters>
<InsertParameters>
<asp:Parameter Name="CodMappa" Type="String" />
<asp:Parameter Name="CodObj" Type="String" />
<asp:Parameter Name="CodStato" Type="String" />
<asp:Parameter Name="CodEvento" Type="String" />
<asp:Parameter Name="NextCodStato" Type="String" />
<asp:Parameter Name="CmdPlugin" Type="String" />
<asp:Parameter Name="text2show" Type="String" />
<asp:Parameter Name="descrComando" Type="String" />
</InsertParameters>
</asp:ObjectDataSource>
@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class mod_elencoBarcode : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
/// <summary>
/// formatta correttamente per stampa barcode
/// </summary>
/// <param name="valore"></param>
/// <returns></returns>
public string barcodeFormat(object valore)
{
return string.Format("*{0}*", valore);
}
}
@@ -0,0 +1,97 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_elencoBarcode {
/// <summary>
/// GridView1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView GridView1;
/// <summary>
/// lnkHowTo control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lnkHowTo;
/// <summary>
/// ModalPopupExtender1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.ModalPopupExtender ModalPopupExtender1;
/// <summary>
/// pnlInstallFont control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlInstallFont;
/// <summary>
/// TabContainer1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.TabContainer TabContainer1;
/// <summary>
/// TabPanel1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.TabPanel TabPanel1;
/// <summary>
/// TabPanel2 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.TabPanel TabPanel2;
/// <summary>
/// lnkEsci control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lnkEsci;
/// <summary>
/// ods control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
}
}
@@ -0,0 +1,257 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_elencoComm" Codebehind="mod_elencoComm.ascx.cs" %>
<%@ Register Src="mod_filtro.ascx" TagName="mod_filtro" TagPrefix="uc1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_logStati.ascx" TagName="mod_logStati" TagPrefix="uc2" %>
<div class="filtro_1">
<div style="width: 100%">
<span style="float: left;">
<uc1:mod_filtro ID="mf_tipoFiltro" runat="server" changeCheckEnabled="false" changeCheckVisible="false" />
<asp:ObjectDataSource ID="odsTipoFiltro" runat="server" OldValuesParameterFormatString="original_{0}"
SelectMethod="getByUrl" TypeName="DS_utilityTableAdapters.v_selFiltriTableAdapter">
<SelectParameters>
<asp:ControlParameter ControlID="lblPag" DefaultValue="*" Name="url" PropertyName="Text"
Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<asp:Label runat="server" ID="lblPag" Visible="false" />
</span><span style="float: left;">
<uc1:mod_filtro ID="mf_clienti" runat="server" />
<asp:ObjectDataSource ID="odsFiltroClienti" runat="server" OldValuesParameterFormatString="original_{0}"
SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selClientiTableAdapter">
</asp:ObjectDataSource>
</span><span style="float: right;">
<asp:Button ID="btnShowNew" runat="server" OnClick="btnShowNew_Click" CausesValidation="false" />
</span>
</div>
<div style="clear: both;">
<asp:Panel ID="pnlNew" runat="server" Visible="false" BackColor="#CCCCFF">
<table cellpadding="5px">
<tr>
<td>
<asp:Label ID="lblCli" runat="server" />
</td>
<td>
<uc1:mod_filtro ID="mf_cliNew" runat="server" changeCheckEnabled="false" changeCheckVisible="false" />
</td>
<td>
<asp:Label ID="lblCicloEqua" runat="server" />
</td>
<td>
<asp:DropDownList runat="server" ID="ddlCiclo" DataSourceID="odsValLav" DataTextField="label"
DataValueField="value">
</asp:DropDownList>
<asp:ObjectDataSource ID="odsValLav" runat="server" OldValuesParameterFormatString="original_{0}"
SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selAnagLavTableAdapter">
</asp:ObjectDataSource>
</td>
<td>
<asp:Label ID="lblDescr" runat="server" />
</td>
<td>
<asp:TextBox ID="txtDescr" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvDescr" runat="server" ErrorMessage="!!!" ControlToValidate="txtDescr" />
</td>
</tr>
<tr>
<td>
<asp:Label ID="lblNumDDT" runat="server" />
</td>
<td>
<asp:TextBox ID="txtDDT" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvDDT" runat="server" ErrorMessage="!!!" ControlToValidate="txtDDT" />
</td>
<td>
<asp:Label ID="lblDataDDT" runat="server" />
</td>
<td>
<asp:TextBox ID="txtDataDDT" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvDataDDT" runat="server" ErrorMessage="!!!" ControlToValidate="txtDataDDT" />
<cc1:CalendarExtender ID="CalendarExtender1" runat="server" FirstDayOfWeek="Monday"
TargetControlID="txtDataDDT" Format="dd/MM/yyyy">
</cc1:CalendarExtender>
</td>
<td colspan="2" align="right">
<asp:Button ID="btnNewComm" runat="server" OnClick="btnNewComm_Click" CausesValidation="true" />
</td>
</tr>
</table>
</asp:Panel>
</div>
</div>
<div style="float: left; clear: both;">
<asp:GridView ID="grView" runat="server" AutoGenerateColumns="False" DataSourceID="ods"
DataKeyNames="Cod" AllowPaging="True" AllowSorting="True" OnSelectedIndexChanged="grView_SelectedIndexChanged"
OnDataBound="grView_DataBound" OnRowUpdating="grView_RowUpdating">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnReset" runat="server" Text='<%# traduci("Reset") %>' OnClick="btnReset_Click"
Visible="false" />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgSelect" runat="server" CausesValidation="False" CommandName="Select"
ToolTip='<%# traduci("Select") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.seleziona, SteamWare.dimImg.small) %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Cliente" HeaderText="Cliente" SortExpression="Cliente"
ReadOnly="true" />
<asp:TemplateField HeaderText="DDT" SortExpression="DDT">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("DDT") %>' ToolTip='<%# Eval("Cod")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="DataDDT" HeaderText="DataDDT" SortExpression="DataDDT"
ReadOnly="true" DataFormatString="{0:dd/MM/yy}" />
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:ImageButton runat="server" ID="btnPrintScheda" ImageUrl='<%# imgPath(SteamWare.tipoImg.barcode , SteamWare.dimImg.small) %>' CommandArgument='<%# Eval("Cod")%>' ToolTip='<%# traduci("stampaBarcode") %>' OnClick="btnPrintScheda_Click" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Ciclo" HeaderText="Ciclo" SortExpression="Ciclo" ReadOnly="true" />
<asp:TemplateField HeaderText="Stato" SortExpression="CodStato" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<span style="float: left; vertical-align: top;">
<asp:ImageButton ID="imgMostraLogStati" runat="server" CausesValidation="False" CommandName="Select"
OnClick="imgMostraLogStati_Click" ToolTip='<%# traduci("MostraLogStati")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.notepad , SteamWare.dimImg.small) %>' />
</span><span style="float: right; vertical-align: top;">
<asp:Image runat="server" ID="imgSemaforo" Visible='<%# isSemaforoVisibile(Eval("minCodStato"),Eval("maxCodStato")) %>'
ImageUrl='<%# immagineDaStato(Eval("minCodStato"),Eval("maxCodStato")) %>' ToolTip='<%# toolTipDaStato(Eval("minCodStato"),Eval("maxCodStato")) %>' /></span>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("Stato") %>'></asp:Label>
<div style="font-size: smaller; color: #57aa57;">
-->
<asp:Label ID="Label4" runat="server" Text='<%# Bind("maxStato") %>' /></div>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:ImageButton ID="imgAccetta" runat="server" CausesValidation="False" CommandName="Update"
OnClick="imgAccetta_Click" ToolTip='<%# traduci("AccettaObjXps")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>'
Visible='<%# isAccettVisible(Eval("CodStato")) %>' />
<cc1:ConfirmButtonExtender ID="cbeAccetta" runat="server" ConfirmText='<%# traduci("confermaAccettaObjXps")%>'
TargetControlID="imgAccetta">
</cc1:ConfirmButtonExtender>
<asp:ImageButton ID="imgSchedulaTutto" runat="server" CausesValidation="False" CommandName="Select"
OnClick="imgSchedulaTutto_Click" ToolTip='<%# traduci("SchedulaObjXps")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica , SteamWare.dimImg.small) %>'
Visible='<%# isSchedulaVisible(Eval("CodStato")) %>' />
<asp:ImageButton ID="imgSetStato" runat="server" CausesValidation="False" CommandName="Select"
OnClick="imgSetStato_Click" ToolTip='<%# traduci("setStatoObjXps")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica , SteamWare.dimImg.small) %>'
Visible='<%# isSetStatoVisible(Eval("CodStato")) %>' />
<asp:ImageButton ID="imgFattura" runat="server" CausesValidation="False" CommandName="Update"
OnClick="imgFattura_Click" ToolTip='<%# traduci("FatturaObjXps")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>'
Visible='<%# isFatturaVisible(Eval("CodStato")) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender2" runat="server" ConfirmText='<%# traduci("confermaFatturaObjXps")%>'
TargetControlID="imgFattura">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="descrizione" HeaderText="descrizione" SortExpression="descrizione"
ReadOnly="true" />
<asp:BoundField DataField="Peso" HeaderText="Peso" ReadOnly="True" SortExpression="Peso"
DataFormatString="{0:N2} kg" />
<asp:BoundField DataField="Righe" HeaderText="Righe" SortExpression="Righe" ReadOnly="true" />
<asp:BoundField DataField="Qta" HeaderText="Qta" SortExpression="Qta" ReadOnly="true" />
<asp:BoundField DataField="Colli" HeaderText="Colli" SortExpression="Colli" ReadOnly="true" />
<asp:BoundField DataField="DataArrivo" HeaderText="DataArrivo" SortExpression="DataArrivo"
ReadOnly="true" DataFormatString="{0:dd/MM/yy HH:mm}" />
<asp:BoundField DataField="DataPrevista" HeaderText="DataPrevista" SortExpression="DataPrevista"
ReadOnly="true" DataFormatString="{0:dd/MM/yy HH:mm}" />
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>'
Visible='<%# userCanDel(Eval("CodStato")) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}"
SelectMethod="getByCodFiltro" TypeName="DS_applicazioneTableAdapters.v_commesseTableAdapter"
DeleteMethod="sp_delObj" FilterExpression=" Cliente LIKE '%{0}%' OR DDT LIKE '%{0}%' OR Descrizione LIKE '%{0}%' ">
<DeleteParameters>
<asp:Parameter Name="Original_Cod" Type="String" />
</DeleteParameters>
<FilterParameters>
<asp:SessionParameter DefaultValue="*" Name="ricerca" SessionField="valoreCercato" />
</FilterParameters>
<SelectParameters>
<asp:ControlParameter ControlID="mf_tipoFiltro" DefaultValue="*" Name="CodFiltro"
PropertyName="Valore" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<div style="clear: both;">
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
</div>
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
<asp:Panel ID="pnlSetDueDate" Visible="false" runat="server">
<div class="notaMargine">
<div style="text-align: center;">
<asp:Label runat="server" ID="lblDataPrev" Text="..." /><br />
<asp:TextBox ID="txtDueDate" runat="server" Text="..." Width="6em" />
<asp:RequiredFieldValidator ID="rfvDueDate" runat="server" ErrorMessage="!!!" ControlToValidate="txtDueDate" />
<cc1:CalendarExtender ID="ce_DueDate" runat="server" FirstDayOfWeek="Monday" TargetControlID="txtDueDate"
Format="dd/MM/yyyy">
</cc1:CalendarExtender>
<asp:DropDownList runat="server" ID="ddlOra">
<asp:ListItem Value="9">09:00</asp:ListItem>
<asp:ListItem Value="14">14:00</asp:ListItem>
</asp:DropDownList>
</div>
<div style="text-align: center;">
<asp:Button ID="btnOk" runat="server" Width="100px" OnClick="btnOk_Click" />
&nbsp;&nbsp;
<asp:Button ID="btnCancel" runat="server" Width="100px" OnClick="btnCancel_Click" />
<cc1:ConfirmButtonExtender ID="cbeOkDueDate" runat="server" ConfirmText="..." TargetControlID="btnOk">
</cc1:ConfirmButtonExtender>
</div>
</div>
</asp:Panel>
<asp:Panel ID="pnlCambiaStato" Visible="false" runat="server">
<div class="notaMargine">
<div style="text-align: center;">
<asp:Label runat="server" ID="lblImpostaStato" Text="..." /><br />
<asp:DropDownList runat="server" ID="ddlStato2Set" DataSourceID="odsStati" DataTextField="label"
DataValueField="value">
</asp:DropDownList>
<asp:ObjectDataSource ID="odsStati" runat="server" OldValuesParameterFormatString="original_{0}"
SelectMethod="getByConditio" TypeName="DS_utilityTableAdapters.v_selStatiTableAdapter">
<SelectParameters>
<asp:Parameter DefaultValue="EQUA_comm" Name="conditio" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
</div>
<div style="text-align: center;">
<asp:Button ID="btnOkStati" runat="server" Width="100px" OnClick="btnOkStati_Click" />
&nbsp;&nbsp;
<asp:Button ID="btnCancelStati" runat="server" Width="100px" OnClick="btnCancelStati_Click" />
<cc1:ConfirmButtonExtender ID="cbeOkStati" runat="server" ConfirmText="..." TargetControlID="btnOkStati">
</cc1:ConfirmButtonExtender>
</div>
</div>
</asp:Panel>
<asp:Panel ID="pnlLogStati" Visible="false" runat="server">
<uc2:mod_logStati ID="mod_logStati1" runat="server" />
</asp:Panel>
@@ -0,0 +1,600 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
using XPS_data;
namespace XPS.WebUserControls
{
public partial class mod_elencoComm : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
grView.SelectedIndex = -1;
grView.DataBind();
}
#endregion
#region gestione eventi
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_applicazione.v_commesseDataTable tabella = new DS_applicazione.v_commesseDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// modo d'uso PRIVATE del controllo tra i vari magazzino/segreteria/produzione/direzione
/// </summary>
protected modoXPS_Equa _currMode = modoXPS_Equa.segreteria;
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "CodDDT";
mf_clienti.eh_selValore += new EventHandler(mf_clienti_eh_selValore);
mf_tipoFiltro.eh_selValore += new EventHandler(mf_tipoFiltro_eh_selValore);
}
/// <summary>
/// nascondo i pannelli accessori x sicurezza...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void mf_tipoFiltro_eh_selValore(object sender, EventArgs e)
{
pnlCambiaStato.Visible = false;
pnlLogStati.Visible = false;
pnlNew.Visible = false;
pnlSetDueDate.Visible = false;
}
/// <summary>
/// sistemo permessi utente e in cascata sistemo visualizzaizone filtri e controlli
/// </summary>
protected override void SetUpByUserRight()
{
base.SetUpByUserRight();
if (!Page.IsPostBack)
{
// imposto la pag corrente nel controllo di filtraggio...
lblPag.Text = _paginaCorrente;
mf_clienti.ods = odsFiltroClienti;
mf_tipoFiltro.ods = odsTipoFiltro;
fixControlliDaModoCorrente();
}
}
/// <summary>
/// imposta i controlli secondo il modo corrente...
/// </summary>
private void fixControlliDaModoCorrente()
{
// mostro nutton new SOLO se in stato magazzino/direzione...
if (currMode == modoXPS_Equa.magazzino || currMode == modoXPS_Equa.direzione)
{
btnShowNew.Visible = true;
}
else
{
btnShowNew.Visible = false;
}
}
void mf_clienti_eh_selValore(object sender, EventArgs e)
{
// controllo se filtro attivo...
if (mf_clienti.valore != "*")
{
ods.FilterExpression = string.Format("( Cliente LIKE '%{0}%' OR DDT LIKE '%{0}%' OR Descrizione LIKE '%{0}%' ) AND CodCliente = '{0}'", mf_clienti.valore);
}
else
{
ods.FilterExpression = " Cliente LIKE '%{0}%' OR DDT LIKE '%{0}%' OR Descrizione LIKE '%{0}%' ";
}
grView.DataBind();
}
protected override void traduciObj()
{
base.traduciObj();
btnShowNew.Text = traduci("btnShowNew");
btnNewComm.Text = traduci("btnNewComm");
lblCli.Text = traduci("lblCli");
lblNumDDT.Text = traduci("lblNumDDT");
lblDataDDT.Text = traduci("lblDataDDT");
lblDescr.Text = traduci("lblDescr");
lblCicloEqua.Text = traduci("lblCicloEqua");
lblDataPrev.Text = traduci("updateAllObjChild");
txtDueDate.Text = DateTime.Now.AddDays(memLayer.ML.confReadInt("defDayLeadTime")).ToString("dd/MM/yyyy");
btnCancel.Text = traduci("btnCancel");
btnOk.Text = traduci("btnOk");
btnCancelStati.Text = traduci("btnCancel");
btnOkStati.Text = traduci("btnOk");
lblImpostaStato.Text = traduci("lblImpostaStato");
cbeOkDueDate.ConfirmText = traduci("confermaOkDueDate");
cbeOkStati.ConfirmText = traduci("confermaOkCambioStati");
}
/// <summary>
/// mostra/nasconde pannello nuovo
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnShowNew_Click(object sender, EventArgs e)
{
scambiaVisibPnlNew();
}
/// <summary>
/// scambio visibilità pnl
/// </summary>
private void scambiaVisibPnlNew()
{
// in base alla visibilità indico il testo corretto e seleziono o meno il filtro...
if (!pnlNew.Visible)
{
btnShowNew.Text = traduci("btnHideNew");
mf_cliNew.ods = odsFiltroClienti;
}
else
{
btnShowNew.Text = traduci("btnShowNew");
}
pnlNew.Visible = !pnlNew.Visible;
}
/// <summary>
/// creazione di un nuovo set...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNewComm_Click(object sender, EventArgs e)
{
XPS_data.DS_applicazioneTableAdapters.v_commesseTableAdapter taComm = new XPS_data.DS_applicazioneTableAdapters.v_commesseTableAdapter();
XPS_data.DS_applicazioneTableAdapters.sp_rec4DayTableAdapter taR4D = new XPS_data.DS_applicazioneTableAdapters.sp_rec4DayTableAdapter();
// calcolo la prima posizione libera della giornata...
int nextIdx = 1;
try
{
nextIdx = 1 + Convert.ToInt32(taR4D.GetData(string.Format("{0:yyMMdd}", DateTime.Now, nextIdx)));
}
catch
{ }
// creazione di un nuovo set...
taComm.sp_creaSetObj(string.Format("{0:yyMMdd}{1:00}", DateTime.Now, nextIdx), "EQUA", mf_cliNew.valore, txtDDT.Text, Convert.ToDateTime(txtDataDDT.Text), ddlCiclo.SelectedValue, user_std.UtSn.utente, txtDescr.Text);
// nascondo tutto...
txtDDT.Text = "";
txtDataDDT.Text = "";
txtDescr.Text = "";
scambiaVisibPnlNew();
// aggiorno pannello...
grView.DataBind();
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// salvo in session che il prox comando è clonare...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgAccetta_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "accettaObj");
}
/// <summary>
/// salvo in session che il prox comando è registrare come fatturato...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgFattura_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "fatturaObj");
}
/// <summary>
/// in caso di aggiornamento verifico se sia salvato un comando accetta...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
// quale comando?
// carico l'idx dell'oggetto
string idxObj = e.Keys["Cod"].ToString();
string _comando = "";
if (SteamWare.memLayer.ML.isInSessionObject("nextObjCommand"))
{
_comando = SteamWare.memLayer.ML.StringSessionObj("nextObjCommand");
SteamWare.memLayer.ML.emptySessionVal("nextObjCommand");
}
// verifico il tipo di richiesta (up/down level, clona o update normale
switch (_comando)
{
case "accettaObj":
// aggiorno lo stato dell'oggetto e dei child, x aggiornare prendo tutto quanto INIZIA come l'idx principale (meno il campo "D" quindi del DDT...)
XPS_data.XPS.obj.taObj.updateStatoTree("02", user_std.UtSn.utente, DateTime.Now, idxObj.Replace("D", "%"));
grView.EditIndex = -1;
grView.DataBind();
// blocco update!
e.Cancel = true;
break;
case "fatturaObj":
// aggiorno lo stato dell'oggetto e dei child, x aggiornare prendo tutto quanto INIZIA come l'idx principale (meno il campo "D" quindi del DDT...)
XPS_data.XPS.obj.taObj.updateStatoTree("07", user_std.UtSn.utente, DateTime.Now, idxObj.Replace("D", "%"));
grView.EditIndex = -1;
grView.DataBind();
// blocco update!
e.Cancel = true;
break;
default:
// annullo poi update...
e.Cancel = true;
break;
}
}
/// <summary>
/// restituisce se sia visibile il controllo di accettazione...
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool isAccettVisible(object codStato)
{
bool answ = true;
if (codStato.ToString().IndexOf("01") < 0) answ = false;
if (currMode != modoXPS_Equa.magazzino) answ = false;
return answ;
}
/// <summary>
/// restituisce se sia visibile il controllo di fatturazione...
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool isFatturaVisible(object codStato)
{
bool answ = true;
if (codStato.ToString().IndexOf("06") < 0) answ = false;
if (currMode != modoXPS_Equa.segreteria) answ = false;
return answ;
}
/// <summary>
/// restituisce se sia visibile il controllo di edit x schedulare in blocco tutto (oggetto, righe, ULP...)
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool isSchedulaVisible(object codStato)
{
bool answ = true;
if (codStato.ToString().IndexOf("02") < 0) answ = false;
// controllo se sono su visualizzazione produzione...
if (currMode != modoXPS_Equa.produzione) answ = false;
return answ;
}
/// <summary>
/// restituisce se sia visibile il controllo di edit x schedulare in blocco tutto (oggetto, righe, ULP...)
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool isSetStatoVisible(object codStato)
{
bool answ = true;
// controllo se sono su visualizzazione produzione...
if (currMode != modoXPS_Equa.direzione) answ = false;
return answ;
}
/// <summary>
/// definisce se sia visibile il semaforo di stato spedizione
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public bool isSemaforoVisibile(object minCodStato, object maxCodStato)
{
bool answ = false;
if ((Convert.ToInt32(maxCodStato) > 4) && (Convert.ToInt32(minCodStato) < 6)) answ = true; // se il max è superiore a 4 qualcosa è spedibile... o spedito, ergo mostro semaforo...
return answ;
}
/// <summary>
/// restituisce path all'immagine corretta x il semaforo di "spedibilità" dato lo stato:
/// ROSSO: niente pronto
/// VERDE: tutto spedito
/// GIALLO: qualcosa di pronto (o anche spedito) e qualcosa no...
/// </summary>
/// <param name="minCodStato"></param>
/// <param name="maxCodStato"></param>
/// <returns></returns>
public string immagineDaStato(object minCodStato, object maxCodStato)
{
string answ = imgPath(SteamWare.tipoImg.semaforoGiallo, SteamWare.dimImg.medium, tipoFileImg.gif);
int codMin = Convert.ToInt32(minCodStato);
int codMax = Convert.ToInt32(maxCodStato);
// in base ai 2 valori relativi decido semafori...
if (codMax < 5) answ = imgPath(SteamWare.tipoImg.semaforoRosso, SteamWare.dimImg.medium, tipoFileImg.gif);
if (codMin > 4) answ = imgPath(SteamWare.tipoImg.semaforoVerde, SteamWare.dimImg.medium, tipoFileImg.gif);
return answ;
}
/// <summary>
/// restituisce tooltip spiegazione stato
/// </summary>
/// <param name="minCodStato"></param>
/// <param name="maxCodStato"></param>
/// <returns></returns>
public string toolTipDaStato(object minCodStato, object maxCodStato)
{
string answ = traduci("commParzProntaSpedire");
int codMin = Convert.ToInt32(minCodStato);
int codMax = Convert.ToInt32(maxCodStato);
// in base ai 2 valori relativi decido semafori...
if (codMax < 5) answ = traduci("commNonProntaSpedire");
if (codMin > 4) answ = traduci("commProntaSpedire");
return answ;
}
/// <summary>
/// determina se l'utente possa cancellare, x ora sempre si...
/// </summary>
/// <returns></returns>
public bool userCanDel(object codStato)
{
return isAccettVisible(codStato);
}
protected override void OnUnload(EventArgs e)
{
base.OnUnload(e);
mf_clienti.eh_selValore -= new EventHandler(mf_clienti_eh_selValore);
}
/// <summary>
/// imposta il modo d'uso del controllo tra i vari magazzino/segreteria/produzione/direzione
/// </summary>
public modoXPS_Equa currMode
{
get
{
return _currMode;
}
set
{
_currMode = value;
}
}
/// <summary>
/// salvo in session che il prox comando è clonare...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgMostraLogStati_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "mostraLog");
}
/// <summary>
/// salvo in session che il prox comando è inserire scheduling x tutti... x non fare select...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgSchedulaTutto_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "schedulaTutto");
}
/// <summary>
/// salvo in session che il prox comando è inserire scheduling x tutti... x non fare select...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgSetStato_Click(object sender, ImageClickEventArgs e)
{
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", "cambiaStato");
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
string _comando = "";
if (SteamWare.memLayer.ML.isInSessionObject("nextObjCommand"))
{
_comando = SteamWare.memLayer.ML.StringSessionObj("nextObjCommand");
SteamWare.memLayer.ML.emptySessionVal("nextObjCommand");
}
switch (_comando)
{
case "schedulaTutto": // non è vero select ma un edit della data/ora di consegna...
pnlSetDueDate.Visible = true;
pnlCambiaStato.Visible = false;
pnlLogStati.Visible = false;
break;
case "cambiaStato": // non è vero select ma un edit dello stato...
pnlCambiaStato.Visible = true;
pnlSetDueDate.Visible = false;
pnlLogStati.Visible = false;
break;
case "mostraLog": // non è vero select ma un show del log di cambio stato
pnlLogStati.Visible = true;
pnlSetDueDate.Visible = false;
pnlCambiaStato.Visible = false;
mod_logStati1.idxObj = grView.SelectedValue.ToString();
break;
default: // è select...
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue.ToString(), true);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
break;
}
}
protected void btnOk_Click(object sender, EventArgs e)
{
// significa che mi chiedono di impostare la data a tutti i child...
DateTime dueDate = Convert.ToDateTime(txtDueDate.Text).AddHours(Convert.ToInt32(ddlOra.SelectedValue));
string codObjCommon = grView.SelectedValue.ToString().Replace("D", "%");
// salvo le date...
XPS_data.XPS.obj.taObj.updateDueDateULP(dueDate, user_std.UtSn.utente, DateTime.Now, codObjCommon);
// aggiorno stato...
XPS_data.XPS.obj.taObj.updateStatoTree("03", user_std.UtSn.utente, DateTime.Now, codObjCommon);
hidePanelDueDate();
}
protected void btnCancel_Click(object sender, EventArgs e)
{
hidePanelDueDate();
}
protected void btnOkStati_Click(object sender, EventArgs e)
{
string codObjCommon = grView.SelectedValue.ToString().Replace("D", "%");
// aggiorno stato...
XPS_data.XPS.obj.taObj.updateStatoTree(ddlStato2Set.SelectedValue, user_std.UtSn.utente, DateTime.Now, codObjCommon);
hidePanelStati();
}
protected void btnCancelStati_Click(object sender, EventArgs e)
{
hidePanelStati();
}
/// <summary>
/// nasconde il pannello della modifica stato DDT
/// </summary>
private void hidePanelDueDate()
{
// nascondo i vari controlli...
pnlSetDueDate.Visible = false;
resetSelezione();
}
/// <summary>
/// nasconde il pannello della modifica stato DDT
/// </summary>
private void hidePanelStati()
{
// nascondo i vari controlli...
pnlCambiaStato.Visible = false;
resetSelezione();
}
/// <summary>
/// stampa la scheda selezionata
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnPrintScheda_Click(object sender, ImageClickEventArgs e)
{
ImageButton imgBtn = (ImageButton)sender;
// stampo!
reportPrinter.obj.printReport(reportRichiesto.Barcode, memLayer.ML.confReadString("printerBarcode"), imgBtn.CommandArgument);
}
#endregion
}
}
@@ -0,0 +1,421 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_elencoComm {
/// <summary>
/// mf_tipoFiltro control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro mf_tipoFiltro;
/// <summary>
/// odsTipoFiltro control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsTipoFiltro;
/// <summary>
/// lblPag control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPag;
/// <summary>
/// mf_clienti control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro mf_clienti;
/// <summary>
/// odsFiltroClienti control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsFiltroClienti;
/// <summary>
/// btnShowNew control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnShowNew;
/// <summary>
/// pnlNew control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlNew;
/// <summary>
/// lblCli control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblCli;
/// <summary>
/// mf_cliNew control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro mf_cliNew;
/// <summary>
/// lblCicloEqua control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblCicloEqua;
/// <summary>
/// ddlCiclo control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList ddlCiclo;
/// <summary>
/// odsValLav control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsValLav;
/// <summary>
/// lblDescr control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblDescr;
/// <summary>
/// txtDescr control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtDescr;
/// <summary>
/// rfvDescr control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RequiredFieldValidator rfvDescr;
/// <summary>
/// lblNumDDT control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumDDT;
/// <summary>
/// txtDDT control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtDDT;
/// <summary>
/// rfvDDT control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RequiredFieldValidator rfvDDT;
/// <summary>
/// lblDataDDT control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblDataDDT;
/// <summary>
/// txtDataDDT control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtDataDDT;
/// <summary>
/// rfvDataDDT control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RequiredFieldValidator rfvDataDDT;
/// <summary>
/// CalendarExtender1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.CalendarExtender CalendarExtender1;
/// <summary>
/// btnNewComm control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnNewComm;
/// <summary>
/// grView control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grView;
/// <summary>
/// ods control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
/// <summary>
/// lblNumRec control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumRec;
/// <summary>
/// lblWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarning;
/// <summary>
/// pnlSetDueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlSetDueDate;
/// <summary>
/// lblDataPrev control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblDataPrev;
/// <summary>
/// txtDueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtDueDate;
/// <summary>
/// rfvDueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RequiredFieldValidator rfvDueDate;
/// <summary>
/// ce_DueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.CalendarExtender ce_DueDate;
/// <summary>
/// ddlOra control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList ddlOra;
/// <summary>
/// btnOk control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnOk;
/// <summary>
/// btnCancel control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnCancel;
/// <summary>
/// cbeOkDueDate control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.ConfirmButtonExtender cbeOkDueDate;
/// <summary>
/// pnlCambiaStato control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlCambiaStato;
/// <summary>
/// lblImpostaStato control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblImpostaStato;
/// <summary>
/// ddlStato2Set control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList ddlStato2Set;
/// <summary>
/// odsStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsStati;
/// <summary>
/// btnOkStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnOkStati;
/// <summary>
/// btnCancelStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnCancelStati;
/// <summary>
/// cbeOkStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::AjaxControlToolkit.ConfirmButtonExtender cbeOkStati;
/// <summary>
/// pnlLogStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlLogStati;
/// <summary>
/// mod_logStati1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_logStati mod_logStati1;
}
}
@@ -0,0 +1,180 @@
<%@ Control Language="C#" AutoEventWireup="true"
Inherits="XPS.WebUserControls.mod_ev2stati" Codebehind="mod_ev2stati.ascx.cs" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Src="mod_selettore_ajax.ascx" TagName="mod_selettore_ajax" TagPrefix="uc2" %>
<%@ Register Src="mod_filtro.ascx" TagName="mod_filtro" TagPrefix="uc1" %>
<asp:GridView ID="grView" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False"
OnSelectedIndexChanged="grView_SelectedIndexChanged" OnDataBound="grView_DataBound"
DataKeyNames="CodMappa,IdxTipoObj,CodStato,CodEvento" DataSourceID="ods">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPager" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle CssClass="ctrHeaderPager" ForeColor="White" Font-Bold="True" />
<EmptyDataRowStyle CssClass="ctrRowStyle" />
<EmptyDataTemplate>
<asp:Label runat="server" ID="lblNoRecord" Text='<%# traduci("noRecord") %>' />
<asp:Button ID="btnNew" runat="server" OnClick="btnNewFromEmpty_Click" Text='<%# traduci("New") %>' />
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnReset" runat="server" Text='<%# traduci("Reset") %>' OnClick="btnReset_Click"
Visible="true" />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgSelect" runat="server" CausesValidation="False" CommandName="Select"
ToolTip='<%# traduci("Select") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.seleziona, SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgEdit" runat="server" CausesValidation="False" CommandName="Edit"
ToolTip='<%# traduci("Edit") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.modifica, SteamWare.dimImg.small) %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="DescrObj" SortExpression="DescrObj">
<EditItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("DescrObj") %>'></asp:Label>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("DescrObj") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:Label ID="Label1" runat="server" Text="="></asp:Label>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="DescrEvento" SortExpression="DescrEvento">
<EditItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Eval("DescrEvento") %>'></asp:Label>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("DescrEvento") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:Label ID="Label3" runat="server" Text="="></asp:Label>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="StatoCurr" SortExpression="StatoCurr">
<EditItemTemplate>
<asp:DropDownList ID="dlCodStato" runat="server" DataSourceID="odsStati" DataTextField="DescrStato"
DataValueField="CodStato" SelectedValue='<%# Bind("CodStato") %>'>
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("StatoCurr") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="dlCodStato" runat="server" DataSourceID="odsStati" DataTextField="DescrStato"
DataValueField="CodStato" SelectedValue='<%# Bind("CodStato") %>'>
</asp:DropDownList>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="StatoNext" SortExpression="StatoNext">
<EditItemTemplate>
<asp:DropDownList ID="dlNextCodStato" runat="server" DataSourceID="odsStati" DataTextField="DescrStato"
DataValueField="CodStato" SelectedValue='<%# Bind("NextCodStato") %>'>
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%# Bind("StatoNext") %>'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:DropDownList ID="dlNextCodStato" runat="server" DataSourceID="odsStati" DataTextField="DescrStato"
DataValueField="CodStato" SelectedValue='<%# Bind("NextCodStato") %>'>
</asp:DropDownList>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False">
<HeaderTemplate>
<asp:Button ID="btnNew" runat="server" OnClick="btnNew_Click" Text='<%# traduci("New") %>' />
</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="imgDelete" runat="server" CausesValidation="False" CommandName="Delete"
ToolTip='<%# traduci("Delete") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.elimina , SteamWare.dimImg.small) %>' />
<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" ConfirmText='<%# traduci("confermaDel")%>'
TargetControlID="imgDelete">
</cc1:ConfirmButtonExtender>
</ItemTemplate>
<EditItemTemplate>
<asp:ImageButton ID="imgUpdate2" runat="server" CausesValidation="False" CommandName="Update"
ToolTip='<%# traduci("Update")%>' ImageUrl='<%# imgPath(SteamWare.tipoImg.conferma , SteamWare.dimImg.small) %>' />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</EditItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgInsert2" runat="server" CausesValidation="False" CommandName="Insert"
ToolTip='<%# traduci("Insert") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.nuovo , SteamWare.dimImg.small) %>'
OnClick="lblIns_click" />
<asp:ImageButton ID="imgCancel2" runat="server" CausesValidation="False" CommandName="Cancel"
ToolTip='<%# traduci("Cancel") %>' ImageUrl='<%# imgPath(SteamWare.tipoImg.annulla , SteamWare.dimImg.small) %>' />
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="getFiltered" TypeName="DS_XPSTableAdapters.v_ev2statiTableAdapter"
OnInserting="recuperaFooter" DeleteMethod="DeleteQuery" InsertMethod="InsertQuery"
UpdateMethod="UpdateQuery">
<SelectParameters>
<asp:SessionParameter DefaultValue="" Name="CodEvento" SessionField="CodEvento_sel"
Type="String" />
<asp:SessionParameter DefaultValue="0" Name="IdxTipoObj" SessionField="IdxTipoObj_sel"
Type="Int32" />
<asp:SessionParameter DefaultValue="" Name="CodMappa" SessionField="CodMappa_sel"
Type="String" />
</SelectParameters>
<DeleteParameters>
<asp:Parameter Name="Original_IdxTipoObj" Type="Int32" />
<asp:Parameter Name="Original_CodStato" Type="String" />
<asp:Parameter Name="Original_CodEvento" Type="String" />
<asp:Parameter Name="Original_CodMappa" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="CodStato" Type="String" />
<asp:Parameter Name="NextCodStato" Type="String" />
<asp:Parameter Name="Original_IdxTipoObj" Type="Int32" />
<asp:Parameter Name="Original_CodEvento" Type="String" />
<asp:Parameter Name="Original_CodStato" Type="String" />
<asp:Parameter Name="Original_CodMappa" Type="String" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="CodMappa" Type="String" />
<asp:Parameter Name="CodStato" Type="String" />
<asp:Parameter Name="IdxTipoObj" Type="Int32" />
<asp:Parameter Name="CodEvento" Type="String" />
<asp:Parameter Name="NextCodStato" Type="String" />
</InsertParameters>
</asp:ObjectDataSource>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini"></asp:Label><br />
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
<asp:ObjectDataSource ID="odsStati" runat="server" SelectMethod="getByMappaTipoObj"
TypeName="DS_XPSTableAdapters.StatiTableAdapter">
<SelectParameters>
<asp:SessionParameter DefaultValue="0" Name="IdxTipoObj" SessionField="IdxTipoObj_sel"
Type="Int32" />
<asp:SessionParameter DefaultValue="" Name="CodMappa" SessionField="CodMappa_sel"
Type="string" />
</SelectParameters>
</asp:ObjectDataSource>
<br />
<asp:Button ID="btnShowClona" runat="server" OnClick="btnShowClona_Click" />
<asp:Panel ID="pnlClona" runat="server" Visible="False" CssClass="clonaUserPerm">
<asp:Button ID="btnClonaStati" runat="server" OnClick="btnClonaStati_Click" />
<uc1:mod_filtro ID="Mod_filtroTipoObjDest" runat="server" changeCheckEnabled="false"
changeCheckVisible="false" />
<asp:ObjectDataSource ID="odsTipoObj" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="DS_utilityTableAdapters.v_selTipoObjTableAdapter">
</asp:ObjectDataSource>
</asp:Panel>
@@ -0,0 +1,380 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
using XPS_data;
namespace XPS.WebUserControls
{
public partial class mod_ev2stati : ApplicationUserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected bool _showNewBtn = true;
/// <summary>
/// imposta errore non cancellabilità per record correlati
/// </summary>
protected void setNoDeletableErrorMessage()
{
// mostro avviso di non cancellabilità...
lblWarning.Text = traduci("notDeletable_hasChild");
lblWarning.Visible = true;
grView.DataBind();
}
/// <summary>
/// inserisce nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblIns_click(object sender, EventArgs e)
{
// click su inserimento, chiamo il metodo insert dell'ObjectDataSource
ods.Insert();
}
/// <summary>
/// annulla inserimento nuovo valore da footer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lblCanc_click(object sender, EventArgs e)
{
// annullo inserimento: nascondo footer, bind controlli...
grView.FooterRow.Visible = false;
}
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected override void aggiornaControlliDataGL()
{
base.aggiornaControlliDataGL();
grView.PageSize = _righeDataGridMed;
}
/// <summary>
/// traduce gli header delle colonne
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_DataBound(object sender, EventArgs e)
{
if (grView.Rows.Count > 0)
{
LinkButton lb;
// aggiorno gli headers
foreach (TableCell cella in grView.HeaderRow.Cells)
{
try
{
lb = (LinkButton)cella.Controls[0];
lb.Text = traduci(lb.Text);
}
catch
{ }
}
int totRecord = grView.Rows.Count + grView.PageSize * (grView.PageCount - 1);
lblNumRec.Text = string.Format("{0} records of ~ {1}", grView.Rows.Count, totRecord);
}
else
{
lblNumRec.Text = "";
}
}
/// <summary>
/// resetta la selezione dei valori in caso di modifiche su altri controlli
/// </summary>
public void resetSelezione()
{
SteamWare.memLayer.ML.emptySessionVal(string.Format("{0}_sel", _idxGridView));
grView.SelectedIndex = -1;
grView.DataBind();
lblWarning.Visible = false;
if (eh_resetSelezione != null)
{
eh_resetSelezione(this, new EventArgs());
}
}
/// <summary>
/// gestione evento richiesta nuovo valore (mostra footer, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
// mostro il footer oppure la riga dei dettagli x nuovo...
if (grView.FooterRow != null)
{
grView.FooterRow.Visible = true;
}
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
/// <summary>
/// reset della selezione
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnReset_Click(object sender, EventArgs e)
{
resetSelezione();
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
// salvo in session il valore selezionato...
SteamWare.memLayer.ML.setSessionVal(string.Format("{0}_sel", _idxGridView), grView.SelectedValue);
// sollevo evento nuovo valore...
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
}
#endregion
#region gestione eventi
public event EventHandler eh_resetSelezione;
public event EventHandler eh_nuovoValore;
public event EventHandler eh_selValore;
#endregion
#region public
/// <summary>
/// definisce visibilità btnNew
/// </summary>
public bool showNewBtn
{
get
{
return _showNewBtn;
}
set
{
_showNewBtn = value;
}
}
/// <summary>
/// effettua update del modulo
/// </summary>
public void doUpdate()
{
resetSelezione();
}
#endregion
#endregion
#region area codice variabile
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_XPS.v_ev2statiDataTable tabella = new DS_XPS.v_ev2statiDataTable();
DataColumnCollection colonne = tabella.Columns;
return colonne;
}
/// <summary>
/// inizializzazione valori di default
/// </summary>
/// <param name="e"></param>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_idxGridView = "CodStato";
if (!Page.IsPostBack)
{
Mod_filtroTipoObjDest.ods = odsTipoObj;
}
}
/// <summary>
/// traduco labels
/// </summary>
protected override void traduciObj()
{
base.traduciObj();
btnShowClona.Text = traduci("btnShowClona");
btnClonaStati.Text = traduci("btnClonaStati");
}
void Mod_filtro1_eh_selValore(object sender, EventArgs e)
{
// ridisegno
}
/// <summary>
/// setta selected alla riga il cui valore key è in session
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowDataBound(object sender, GridViewRowEventArgs e)
{
}
/// <summary>
/// gestione evento inserimento nuovo record standard (se ZERO presenti)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNewFromEmpty_Click(object sender, EventArgs e)
{
// reset selezione...
resetSelezione();
XPS_data.DS_XPSTableAdapters.v_ev2statiTableAdapter taEv2Stato = new XPS_data.DS_XPSTableAdapters.v_ev2statiTableAdapter();
try
{
// creo 1 obj vuoto...
taEv2Stato.InsertQuery(memLayer.ML.StringSessionObj("CodMappa_sel"), "0", memLayer.ML.IntSessionObj("IdxTipoObj_sel"), memLayer.ML.StringSessionObj("CodEvento_sel"), "0");
grView.DataBind();
lblWarning.Visible = false;
// sollevo evento nuovo valore...
if (eh_nuovoValore != null)
{
eh_nuovoValore(this, new EventArgs());
}
}
catch (Exception exc)
{
lblWarning.Visible = true;
lblWarning.Text = traduci("erroreSelEvStatiMappe");
SteamWare.logger.lg.scriviLog(string.Format("Errore inserimento novo valore da vuoto: {0}", exc), tipoLog.EXCEPTION);
}
}
/// <summary>
/// recupera i dati di un nuovo record contenuti nel footer di un gridView;
/// questi devono esses opportunamente nominati (es: txt{0}, dl{0}, ...)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void recuperaFooter(object sender, ObjectDataSourceMethodEventArgs e)
{
//recupero la riga footer...
DataColumnCollection colonne = colonneObj();
string nomeCol;
string tipoColonna = "";
foreach (DataColumn colonna in colonne)
{
nomeCol = colonna.ColumnName;
// cerco un textbox o quello che sia...
if (grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol)) != null)
{
tipoColonna = "textBox";
}
else if (grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol)) != null)
{
tipoColonna = "dropDownList";
}
else if (grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol)) != null)
{
tipoColonna = "checkBox";
}
else if (grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol)) != null)
{
tipoColonna = "selAjax";
}
// in base al tipo salvo negli inputparameters dell'ODS
switch (tipoColonna)
{
case "textBox":
e.InputParameters[nomeCol] = ((TextBox)grView.FooterRow.FindControl(string.Format("txt{0}", nomeCol))).Text;
break;
case "dropDownList":
e.InputParameters[nomeCol] = ((DropDownList)grView.FooterRow.FindControl(string.Format("dl{0}", nomeCol))).SelectedValue;
break;
case "checkBox":
e.InputParameters[nomeCol] = ((CheckBox)grView.FooterRow.FindControl(string.Format("chk{0}", nomeCol))).Checked;
break;
case "selAjax":
e.InputParameters[nomeCol] = ((mod_selettore_ajax)grView.FooterRow.FindControl(string.Format("selAjax_{0}", nomeCol))).valore;
break;
default:
break;
}
tipoColonna = "";
}
e.InputParameters["CodMappa"] = memLayer.ML.StringSessionObj("CodMappa_sel");
e.InputParameters["IdxTipoObj"] = memLayer.ML.IntSessionObj("IdxTipoObj_sel");
e.InputParameters["CodEvento"] = memLayer.ML.StringSessionObj("CodEvento_sel");
}
/// <summary>
/// mostra pannello cloning
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnShowClona_Click(object sender, EventArgs e)
{
setClonaVisibility();
}
/// <summary>
/// imposta vilibilità pannello cloning e scritta pulsante...
/// </summary>
private void setClonaVisibility()
{
if (pnlClona.Visible)
{
btnShowClona.Text = traduci("btnShowClona");
lblWarning.Visible = false;
}
else
{
btnShowClona.Text = traduci("btnHideClona");
}
pnlClona.Visible = !pnlClona.Visible;
}
/// <summary>
/// chiamo stored di cloning stati...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnClonaStati_Click(object sender, EventArgs e)
{
// verifico siano diverse le selezioni...
if (memLayer.ML.IntSessionObj("IdxTipoObj_sel") != Mod_filtroTipoObjDest.valoreInt)
{
try
{
XPS_data.DS_XPSTableAdapters.SP taSP = new XPS_data.DS_XPSTableAdapters.SP();
taSP.sp_clonaTransizEventi(memLayer.ML.StringSessionObj("CodMappa_sel"), memLayer.ML.StringSessionObj("CodEvento_sel"), memLayer.ML.IntSessionObj("IdxTipoObj_sel"), Mod_filtroTipoObjDest.valoreInt);
lblWarning.Visible = false;
// nascondo...
setClonaVisibility();
}
catch (Exception exc)
{
lblWarning.Visible = true;
lblWarning.Text = traduci("erroreSelDest");
SteamWare.logger.lg.scriviLog(string.Format("Errore cloning transizioni: {0}", exc), tipoLog.EXCEPTION);
}
}
else
{
lblWarning.Text = traduci("erroreSelDest");
lblWarning.Visible = true;
}
}
#endregion
}
}
+106
View File
@@ -0,0 +1,106 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_ev2stati {
/// <summary>
/// grView control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.GridView grView;
/// <summary>
/// ods control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource ods;
/// <summary>
/// lblNumRec control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumRec;
/// <summary>
/// lblWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWarning;
/// <summary>
/// odsStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsStati;
/// <summary>
/// btnShowClona control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnShowClona;
/// <summary>
/// pnlClona control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Panel pnlClona;
/// <summary>
/// btnClonaStati control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnClonaStati;
/// <summary>
/// Mod_filtroTipoObjDest control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::XPS.WebUserControls.mod_filtro Mod_filtroTipoObjDest;
/// <summary>
/// odsTipoObj control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.ObjectDataSource odsTipoObj;
}
}
@@ -0,0 +1,7 @@
<%@ Control Language="C#" AutoEventWireup="true" Inherits="XPS.WebUserControls.mod_filtro" Codebehind="mod_filtro.ascx.cs" %>
<asp:CheckBox ID="chkFilt" runat="server" Text="---" Checked="false" AutoPostBack="True"
OnCheckedChanged="chkFilt_CheckedChanged" />
<asp:DropDownList ID="dlFilt" runat="server" Visible="False" DataTextField="label"
DataValueField="value" AutoPostBack="True" OnSelectedIndexChanged="dlFilt_SelectedIndexChanged">
</asp:DropDownList>
<asp:Label ID="where" runat="server" Visible="false" Text="" />
@@ -0,0 +1,287 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SteamWare;
namespace XPS.WebUserControls
{
public partial class mod_filtro : ApplicationUserControl
{
protected ObjectDataSource _ods;
protected string _valore
{
get
{
return memLayer.ML.StringSessionObj(string.Format("valFiltro_{0}", this.ID));
}
set
{
memLayer.ML.setSessionVal(string.Format("valFiltro_{0}", this.ID), value, false);
}
}
protected bool _changeCheckEnabled = true;
protected bool _changeCheckVisible = true;
protected bool _changeSelEnabled = true;
protected string _where = "";
protected override void traduciObj()
{
if (_changeCheckVisible)
{
if (!chkFilt.Checked)
{
chkFilt.Text = traduci("mostraSoloSelez");
}
else
{
chkFilt.Text = traduci("mostraTutti");
}
}
}
protected void chkFilt_CheckedChanged(object sender, EventArgs e)
{
// cambio modalità visualizzazione del filtro...
dlFilt.Visible = !dlFilt.Visible;
raiseSelEvent();
}
protected void raiseSelEvent()
{
if (!dlFilt.Visible)
{
memLayer.ML.setSessionVal(string.Format("valFiltro_{0}", this.ID), "", false);
}
else
{
_valore = dlFilt.SelectedValue;
}
if (eh_selValore != null)
{
eh_selValore(this, new EventArgs());
}
}
protected void updateChk()
{
chkFilt.Enabled = _changeCheckEnabled;
if (!_changeCheckEnabled)
{
chkFilt.Checked = true;
dlFilt.Visible = true;
}
}
protected void updateSel()
{
dlFilt.Enabled = _changeSelEnabled;
}
protected void updateChkLbl()
{
chkFilt.Visible = _changeCheckVisible;
}
protected override void bindControlli()
{
updateChk();
fixValore();
where.Text = _where;
traduciObj();
}
protected SteamWare.tipoVistaMod _modo = SteamWare.tipoVistaMod.editing;
/// <summary>
/// condizione where per ridurre elementi mostrati in selettore
/// </summary>
public string condizione
{
get
{
return _where;
}
set
{
_where = value;
}
}
/// <summary>
/// fornisce il valore scelto o "*" se nulla selezionato
/// </summary>
public string valore
{
get
{
string answ = "*";
if (chkFilt.Checked)
{
answ = dlFilt.SelectedValue;
}
return answ;
}
set
{
_valore = value;
fixValore();
}
}
/// <summary>
/// primo valore di una chiave multicampo
/// </summary>
public string val_1
{
get
{
string answ = "";
if (chkFilt.Checked)
{
try
{
string[] _dataKey = dlFilt.SelectedValue.Split('#');
answ = _dataKey[0];
}
catch
{ }
}
else
{
answ = "*";
}
return answ;
}
}
/// <summary>
/// secondo valore di una chiave multicampo
/// </summary>
public string val_2
{
get
{
string answ = "";
if (chkFilt.Checked)
{
try
{
string[] _dataKey = dlFilt.SelectedValue.Split('#');
answ = _dataKey[1];
}
catch
{ }
}
else
{
answ = "*";
}
return answ;
}
}
/// <summary>
/// fornisce il valore scelto o "0" se nulla selezionato o non valido
/// </summary>
public int valoreInt
{
get
{
int answ = 0;
try
{
if (chkFilt.Checked)
{
answ = Convert.ToInt32(dlFilt.SelectedValue);
}
}
catch
{ }
return answ;
}
}
protected void fixValore()
{
if (_ods != null)
{
dlFilt.DataSource = _ods;
dlFilt.DataBind();
if (_valore != "")
{
dlFilt.SelectedValue = _valore;
dlFilt.Visible = true;
chkFilt.Checked = true;
}
}
}
public event EventHandler eh_selValore;
/// <summary>
/// determina se sia possibile (de)selezionare il check di filtraggio, altrimenti sempre attivo
/// </summary>
public bool changeCheckEnabled
{
get
{
return _changeCheckEnabled;
}
set
{
_changeCheckEnabled = value;
updateChk();
}
}
/// <summary>
/// determina se sia possibile modificare la selezione
/// </summary>
public bool changeSelEnabled
{
get
{
return _changeSelEnabled;
}
set
{
_changeSelEnabled = value;
updateSel();
}
}
/// <summary>
/// determina se sia possibile visibile il check di filtraggio
/// </summary>
public bool changeCheckVisible
{
get
{
return _changeCheckVisible;
}
set
{
_changeCheckVisible = value;
updateChkLbl();
}
}
protected void dlFilt_SelectedIndexChanged(object sender, EventArgs e)
{
raiseSelEvent();
// salvo val selezionato...
}
/// <summary>
/// oggetto ODS con cui popolare il selettore, VINCOLO abbia campi value(key) / label
/// </summary>
public ObjectDataSource ods
{
get
{
return _ods;
}
set
{
_ods = value;
bindControlli();
}
}
}
}
+43
View File
@@ -0,0 +1,43 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4963
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace XPS.WebUserControls {
public partial class mod_filtro {
/// <summary>
/// chkFilt control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.CheckBox chkFilt;
/// <summary>
/// dlFilt control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.DropDownList dlFilt;
/// <summary>
/// where control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label @where;
}
}

Some files were not shown because too many files have changed in this diff Show More