-ripristinate versione pre 227 x sovrascrittura ermanno di logiche di cancellazione dati da sessione e traduzioni in pagine ascx che non vengono richiamate

- aggiunti moduli exec x particolari/cella da compeltare

git-svn-id: https://keyhammer.ath.cx/svn/GMW/trunk@233 365432ac-a1b5-4ffd-bb28-6d3099d32164
This commit is contained in:
samuele
2010-09-13 15:33:01 +00:00
parent ac3f774d88
commit 5a0087fd04
42 changed files with 920 additions and 49 deletions
@@ -66,36 +66,35 @@
<tr>
<td colspan="2" valign="top">
<div style="text-align: center; border: solid 1px #696969;">
<b>
<asp:Label runat="server" Text='<%# traduci("Legend") %>'></asp:Label></b>
<b>Legenda</b>
<table cellpadding="4" cellspacing="4" style="font-weight: bold;">
<tr>
<td class="cellaPiena" style="width: 80px; height: 20px;">
<asp:Label runat="server" Text='<%# traduci("Piena") %>'></asp:Label>
Piena
</td>
<td class="cellaOccupata" style="width: 80px; height: 20px;">
<asp:Label runat="server" Text='<%# traduci("Occupata") %>'></asp:Label>
Occupata
</td>
<td class="cellaLibera" style="width: 80px; height: 20px;">
<asp:Label runat="server" Text='<%# traduci("Libera") %>'></asp:Label>
Libera
</td>
<td class="cellaInattiva" style="width: 80px; height: 20px;">
<asp:Label runat="server" Text='<%# traduci("Bloccata") %>'></asp:Label>
Bloccata
</td>
<td style="width: 2px; height: 20px;">
&nbsp;
</td>
<td class="selectedCell" style="width: 80px; height: 20px;">
<asp:Label runat="server" Text='<%# traduci("SelMod") %>'></asp:Label>
Selezionata (modifica)
</td>
<td style="width: 2px; height: 20px;">
&nbsp;
</td>
<td class="cellaSelezAll" style="width: 80px; height: 20px;">
<asp:Label runat="server" Text='<%# traduci("SelSX") %>'></asp:Label>
Selezione SX
</td>
<td class="cellaSelezDett" style="width: 80px; height: 20px;">
<asp:Label runat="server" Text='<%# traduci("SelDX") %>'></asp:Label>
Selezione DX
</td>
</tr>
</table>
@@ -194,11 +194,20 @@ namespace GMW.WebUserControls
updateControlli();
}
/// <summary>
/// ritorno ad elenco magazzini
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void lnkReturn_Click(object sender, EventArgs e)
{
// svuoto dati in memoria...
memLayer.ML.emptySessionVal("CodMag_sel");
memLayer.ML.emptySessionVal("IdxBlocco_sel");
memLayer.ML.emptySessionVal("IdxCellaMag");
memLayer.ML.emptySessionVal("Particolare_sel");
memLayer.ML.emptySessionVal("DescStato_sel");
memLayer.ML.emptySessionVal("Esponente_sel");
Response.Redirect("~/StatoMag.aspx");
}
@@ -240,5 +240,4 @@ public partial class mod_login : ApplicationUserControl
}
#endregion
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+3 -4
View File
@@ -1,11 +1,10 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/WebMasterPages/Compact.Master"
AutoEventWireup="true" CodeBehind="Cella.aspx.cs" Inherits="GMW_Term.Cella" %>
<%@ Register src="WebUserControls/mod_execCella.ascx" tagname="mod_execCella" tagprefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<div>
W.I.P.
</div>
<asp:Image ID="Image1" runat="server" ImageUrl="~/images/WIP.png" />
<uc1:mod_execCella ID="mod_execCella1" runat="server" />
</asp:Content>
+2 -2
View File
@@ -14,12 +14,12 @@ namespace GMW_Term {
public partial class Cella {
/// <summary>
/// Image1 control.
/// mod_execCella1 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.Image Image1;
protected global::GMW_Term.WebUserControls.mod_execCella mod_execCella1;
}
}
+16
View File
@@ -117,6 +117,20 @@
<Compile Include="WebUserControls\mod_currentTask.ascx.designer.cs">
<DependentUpon>mod_currentTask.ascx</DependentUpon>
</Compile>
<Compile Include="WebUserControls\mod_execCella.ascx.cs">
<DependentUpon>mod_execCella.ascx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="WebUserControls\mod_execCella.ascx.designer.cs">
<DependentUpon>mod_execCella.ascx</DependentUpon>
</Compile>
<Compile Include="WebUserControls\mod_execParticolare.ascx.cs">
<DependentUpon>mod_execParticolare.ascx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="WebUserControls\mod_execParticolare.ascx.designer.cs">
<DependentUpon>mod_execParticolare.ascx</DependentUpon>
</Compile>
<Compile Include="WebUserControls\mod_execUdc.ascx.cs">
<DependentUpon>mod_execUdc.ascx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
@@ -285,6 +299,8 @@
<Content Include="mazzAppSettings.config" />
<Content Include="mazzConnectionStrings.config" />
<Content Include="Particolare.aspx" />
<Content Include="WebUserControls\mod_execCella.ascx" />
<Content Include="WebUserControls\mod_execParticolare.ascx" />
<Content Include="WebUserControls\mod_searchResults.ascx" />
</ItemGroup>
<ItemGroup>
+3 -5
View File
@@ -1,12 +1,10 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/WebMasterPages/Compact.Master"
AutoEventWireup="true" CodeBehind="Particolare.aspx.cs" Inherits="GMW_Term.Particolare" %>
<%@ Register Src="WebUserControls/mod_execParticolare.ascx" TagName="mod_execParticolare"
TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<div>
W.I.P.
</div>
<asp:Image runat="server" ImageUrl="~/images/WIP.png" />
<uc1:mod_execParticolare ID="mod_execParticolare1" runat="server" />
</asp:Content>
+9
View File
@@ -12,5 +12,14 @@ namespace GMW_Term {
public partial class Particolare {
/// <summary>
/// mod_execParticolare1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::GMW_Term.WebUserControls.mod_execParticolare mod_execParticolare1;
}
}
+8 -8
View File
@@ -57,7 +57,7 @@
<add key="appName" value="GMW_Term" />
<add key="SiteName" value="Ambivere"/>
<add key="mainRev" value="1.0" />
<add key="minRev" value="225" />
<add key="minRev" value="230" />
<add key="copyRight" value="SteamWare © 2010" />
<add key="_allowForceUser" value="true" />
<add key="_safePages" value="jumper.aspx#unauthorized.aspx#allegati.aspx#forceUser.aspx#login.aspx#test.aspx#istruzioni.aspx#Test.aspx" />
@@ -111,17 +111,17 @@
<add key="_adminEmail" value="samuele@steamware.net" />
<add key="_logDir" value="~/logs/" />
<add key="_smtpCli" value="keyhammer.ath.cx" />
<add key="GMWConnectionString" value="Data Source=10.74.82.217\sql2008r2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="GMWConnectionString" value="Data Source=10.74.82.217\sql2008;Initial Catalog=GMW_prod;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="PermessiConnectionString" value="Data Source=10.74.82.217\sql2008;Initial Catalog=GMW_prod;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="UtenteCdcConnectionString" value="Data Source=10.74.82.217\sql2008r2;Initial Catalog=SteamWare_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="VocabolarioConnectionString" value="Data Source=10.74.82.217\sql2008r2 ;Initial Catalog=SteamWare_Vocabolario;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<!--<add key="GMWConnectionString" value="Data Source=10.74.82.217\sql2008r2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="PermessiConnectionString" value="Data Source=10.74.82.217\sql2008r2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="UtenteCdcConnectionString" value="Data Source=10.74.82.217\sql2008r2;Initial Catalog=SteamWare_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="VocabolarioConnectionString" value="Data Source=10.74.82.217\sql2008r2;Initial Catalog=SteamWare_Vocabolario;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<!--<add key="GMWConnectionString" value="Data Source=t110-win2008r2\sql2008r2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="PermessiConnectionString" value="Data Source=t110-win2008r2\sql2008r2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="UtenteCdcConnectionString" value="Data Source=t110-win2008r2\sql2008r2;Initial Catalog=SteamWare_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer" />
<add key="VocabolarioConnectionString" value="Data Source=t110-win2008r2\sql2008r2;Initial Catalog=SteamWare_Vocabolario;Persist Security Info=True;User ID=sa;Password=keyhammer" />-->
<add key="VocabolarioConnectionString" value="Data Source=10.74.82.217\sql2008r2;Initial Catalog=SteamWare_Vocabolario;Persist Security Info=True;User ID=sa;Password=keyhammer" />-->
</appSettings>
<connectionStrings>
<add name="GMW_data.Properties.Settings.GMWConnectionString" connectionString="Data Source=t110-win2008r2\sql2008r2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer" providerName="System.Data.SqlClient"/>
<add name="GMW_data.Properties.Settings.GMWConnectionString" connectionString="Data Source=10.74.82.217\sql2008;Initial Catalog=GMW_prod;Persist Security Info=True;User ID=sa;Password=keyhammer" providerName="System.Data.SqlClient"/>
</connectionStrings>
<system.web.extensions>
<scripting>
@@ -0,0 +1,6 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="mod_execCella.ascx.cs"
Inherits="GMW_Term.WebUserControls.mod_execCella" %>
<div>
W.I.P.
</div>
<asp:Image ID="Image1" runat="server" ImageUrl="~/images/WIP.png" />
@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace GMW_Term.WebUserControls
{
public partial class mod_execCella : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}
@@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4927
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace GMW_Term.WebUserControls {
public partial class mod_execCella {
/// <summary>
/// Image1 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.Image Image1;
}
}
@@ -0,0 +1,52 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="mod_execParticolare.ascx.cs"
Inherits="GMW_Term.WebUserControls.mod_execParticolare" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<div id="Div1">
<asp:Button ID="btnLoginPage" runat="server" OnClick="btnLoginPage_Click" Width="100px"
Font-Size="Smaller" />
<asp:Button ID="btnButtonsHome" runat="server" OnClick="btnButtonsHome_Click" Width="100px"
Font-Size="Smaller" />
</div>
<div id="smallGrid">
<asp:GridView ID="grView" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False"
OnSelectedIndexChanged="grView_SelectedIndexChanged" OnDataBound="grView_DataBound"
Width="100%" DataKeyNames="tipo,valore" DataSourceID="ods" OnRowUpdating="grView_RowUpdating">
<RowStyle CssClass="ctrRowStyle" />
<AlternatingRowStyle CssClass="ctrAltRowStyle" />
<EditRowStyle CssClass="ctrEditRowStyle" />
<SelectedRowStyle CssClass="ctrSelRowStyle" />
<FooterStyle CssClass="ctrFooter" />
<PagerStyle CssClass="ctrHeaderPagerWide" 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 HeaderText="Tipo" SortExpression="Tipo">
<ItemTemplate>
<asp:ImageButton runat="server" ID="imgCodTipo" ImageUrl='<%# pathImgTipo(Eval("Tipo")) %>'
CausesValidation="False" CommandArgument='<%# Eval("Tipo") %>' OnClick="imgAzioneLista_Click"
CommandName="Update" ToolTip='<%# tooltipTipo(Eval("Tipo")) %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="label" SortExpression="label">
<ItemTemplate>
<b>
<asp:Label ID="lbllabel" runat="server" Text='<%# Eval("label") %>' /></b>
<div style="font-size: x-small;">
<asp:Label ID="lblDesc" runat="server" Text='<%# descOggetto(Eval("tipo"),Eval("valore")) %>' />
</div>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:Label ID="lblNumRec" runat="server" CssClass="txtMini" />&nbsp;&nbsp;
<asp:Label ID="lblWarning" runat="server" Visible="false" CssClass="erroreMid" />
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="Original_{0}"
SelectMethod="GetData" TypeName="GMW_data.DS_UtilityTableAdapters.stp_ricercaFullTerminalinoTableAdapter">
<SelectParameters>
<asp:SessionParameter Name="txtSearch" SessionField="searchTerm" Type="String" DefaultValue="*" />
</SelectParameters>
</asp:ObjectDataSource>
</div>
@@ -0,0 +1,469 @@
using System;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;
using SteamWare;
using GMW_data;
namespace GMW_Term.WebUserControls
{
public partial class mod_execParticolare : System.Web.UI.UserControl
{
#region area da NON modificare
#region area protected
protected string _idxGridView;
protected string _idxGridViewExt;
protected string _tabCache;
protected bool _showNewBtn = false;
/// <summary>
/// wrapper traduzione termini
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return user_std.UtSn.Traduci(lemma);
}
/// <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;
default:
break;
}
tipoColonna = "";
}
}
/// <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();
SteamWare.memLayer.ML.emptyCacheVal(_tabCache);
}
/// <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>
/// 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>
/// gestione evento richeista 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();
}
#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
/// <summary>
/// metodi al caricamento della pagina
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
// scrive label e text bottoni
btnLoginPage.Text = "[7]-LogOut";
btnLoginPage.AccessKey = "7";
btnButtonsHome.Text = "[9]-Home";
btnButtonsHome.AccessKey = "9";
}
/// <summary>
/// effettua logout...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnLoginPage_Click(object sender, EventArgs e)
{
TermUtils.TU.forceLogOut();
Response.Redirect("~/Barcode.aspx");
}
/// <summary>
/// va alla pagina dei buttons principale
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnButtonsHome_Click(object sender, EventArgs e)
{
Response.Redirect("~/Home.aspx");
}
/// <summary>
/// elenco colonne del datagrid
/// </summary>
/// <returns></returns>
protected DataColumnCollection colonneObj()
{
DS_Utility.stp_ricercaFullTerminalinoDataTable tabella = new DS_Utility.stp_ricercaFullTerminalinoDataTable();
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 = "TipoSearch";
aggiornaControlliDataGL();
}
/// <summary>
/// aggiorna controlli datagrid e numero righe in pagina
/// </summary>
protected void aggiornaControlliDataGL()
{
grView.PageSize = 4;
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_SelectedIndexChanged(object sender, EventArgs e)
{
}
/// <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;
}
/// <summary>
/// salvo in session che il prox comando è iniziare lista prelievo...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void imgAzioneLista_Click(object sender, ImageClickEventArgs e)
{
ImageButton imgb = (ImageButton)sender;
SteamWare.memLayer.ML.setSessionVal("nextObjCommand", imgb.CommandArgument);
}
/// <summary>
/// in caso di aggiornamento verifico se sia salvato un comando inizia o completa lista prelievo...
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void grView_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
// carico l'idx dell'oggetto
string tipo = e.Keys["tipo"].ToString();
string valore = e.Keys["valore"].ToString();
// quale comando?
string _comando = "";
if (SteamWare.memLayer.ML.isInSessionObject("nextObjCommand"))
{
_comando = SteamWare.memLayer.ML.StringSessionObj("nextObjCommand");
SteamWare.memLayer.ML.emptySessionVal("nextObjCommand");
}
string CodSoggetto = MagClass.magazzino.CodSoggCurrUser;
switch (_comando)
{
case "UDC":
// salvo in sessione
memLayer.ML.setSessionVal("UDC_sel", valore);
// blocco update!
e.Cancel = true;
// faccio redirect
Response.Redirect("~/UDC.aspx");
break;
case "Particolare":
// salvo in sessione
memLayer.ML.setSessionVal("Particolare_sel", valore);
// blocco update!
e.Cancel = true;
// faccio redirect
Response.Redirect("~/Particolare.aspx");
break;
case "Cella":
// salvo in sessione
memLayer.ML.setSessionVal("IdxCella_sel", valore);
// blocco update!
e.Cancel = true;
// faccio redirect
Response.Redirect("~/Cella.aspx");
break;
default:
// faccio update!
break;
}
}
/// <summary>
/// chiamato post modifica valore check/selezione nel selettore filtro stato
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void eh_selectedStato(object sender, EventArgs e)
{
checkFixOds();
}
/// <summary>
/// ssitema visualizzazione dal filtraggi
/// </summary>
private void checkFixOds()
{
// chiamo procedura che aggiorna ods principale
grView.SelectedIndex = -1;
updateOds();
}
/// <summary>
/// aggiorno il gridview
/// </summary>
protected void updateOds()
{
grView.DataBind();
}
/// <summary>
/// chiamato post modifica valore check/selezione nel selettore filtro tipo
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void eh_selectedTipo(object sender, EventArgs e)
{
checkFixOds();
}
/// <summary>
/// restituisce URL immagine del codice da mostrare x TIPO lista
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public string pathImgTipo(object codice)
{
string answ = "";
string tipo = codice.ToString();
switch (tipo)
{
case "UDC":
answ = string.Format("~/images/UDC.png", codice);
break;
case "Particolare":
answ = string.Format("~/images/Part.png", codice);
break;
case "Cella":
answ = string.Format("~/images/Cella.png", codice);
break;
default:
break;
}
return answ;
}
/// <summary>
/// restituisce tooltip da mostrare x TIPO lista
/// </summary>
/// <param name="codStato"></param>
/// <returns></returns>
public string tooltipTipo(object codice)
{
return traduci(codice.ToString());
}
/// <summary>
/// formatta una stringa di descrizione a aprtire dal tipo oggetto
/// </summary>
/// <param name="_tipo"></param>
/// <param name="_valore"></param>
/// <returns></returns>
public string descOggetto(object _tipo, object _valore)
{
string tipo = _tipo.ToString();
string valore = _valore.ToString();
string answ = "";
switch (tipo)
{
case "UDC":
try
{
DS_magazzino.v_UdcDetailRow rigaUdc = MagClass.magazzino.taDettUDC.getByFullUdc(valore, memLayer.ML.StringSessionObj("CodCS"))[0];
answ = string.Format("<b>{0}</b> {1:##} pz M:{2} C:{3}", rigaUdc.Particolare, rigaUdc.Qta, rigaUdc.CodMag, rigaUdc.CodCella);
}
catch (Exception e)
{
logger.lg.scriviLog(string.Format("Eccezione {0}", e), tipoLog.EXCEPTION);
answ = string.Format("{0} - {1}", tipo, valore);
}
break;
case "Particolare":
try
{
DS_magazzino.V_ParticolariOverviewRow rigaPart = MagClass.magazzino.taVParticolariOverwiew.getByParticolareFull(valore, memLayer.ML.StringSessionObj("CodCS"))[0];
answ = string.Format("UDC: <b>{0}</b> (<b>{2}</b> a mag.) - <b>{1:##}</b> pz", rigaPart.NumUDC, rigaPart.TotQta, rigaPart.NumInMag);
}
catch (Exception e)
{
logger.lg.scriviLog(string.Format("Eccezione {0}", e), tipoLog.EXCEPTION);
answ = string.Format("{0} - {1}", tipo, valore);
}
break;
case "Cella":
try
{
DS_magazzino.V_statoCelleCapienzaAssegnatiRow rigaCelle = MagClass.magazzino.taStatoCelle.getByIdxCella(Convert.ToInt32(valore))[0];
answ = string.Format("{0} / {1}", rigaCelle.UdcAssegnati, rigaCelle.Capienza);
}
catch (Exception e)
{
logger.lg.scriviLog(string.Format("Eccezione {0}", e), tipoLog.EXCEPTION);
answ = string.Format("{0} - {1}", tipo, valore);
}
break;
default:
break;
}
return answ;
}
}
}
@@ -0,0 +1,70 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.4927
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace GMW_Term.WebUserControls {
public partial class mod_execParticolare {
/// <summary>
/// btnLoginPage 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 btnLoginPage;
/// <summary>
/// btnButtonsHome 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 btnButtonsHome;
/// <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>
/// 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>
/// 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;
}
}
@@ -198,8 +198,6 @@ namespace GMW_Term.WebUserControls
#endregion
/// <summary>
/// metodi al caricamento della pagina
/// </summary>
@@ -246,8 +244,6 @@ namespace GMW_Term.WebUserControls
grView.PageSize = 4;
}
/// <summary>
/// gestione cambio selezione valore
/// </summary>
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -7,7 +7,7 @@
<add key="appName" value="GMW_Term"/>
<add key="SiteName" value="Ambivere"/>
<add key="mainRev" value="1.0"/>
<add key="minRev" value="225" />
<add key="minRev" value="230" />
<add key="copyRight" value="SteamWare © 2010"/>
<add key="_allowForceUser" value="true" />
<add key="_safePages" value="jumper.aspx#unauthorized.aspx#allegati.aspx#forceUser.aspx#login.aspx#test.aspx#istruzioni.aspx#Test.aspx"/>
Binary file not shown.
@@ -344,14 +344,14 @@
{
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:GMW_Term"
"ProductCode" = "8:{33C2AAC6-677B-4389-9102-38DFC930C7A1}"
"PackageCode" = "8:{D4EF3D63-B3B1-46E9-BD11-1D62288B7732}"
"ProductCode" = "8:{7BFDEF48-8EA1-48D5-8EA7-5271A37E55B2}"
"PackageCode" = "8:{95F5A680-7B4C-4484-9B43-1442B90D595C}"
"UpgradeCode" = "8:{B348C50D-8DAD-4430-AEF0-60800C94CB78}"
"RestartWWWService" = "11:TRUE"
"RemovePreviousVersions" = "11:TRUE"
"DetectNewerInstalledVersion" = "11:TRUE"
"InstallAllUsers" = "11:FALSE"
"ProductVersion" = "8:1.0.225"
"ProductVersion" = "8:1.0.230"
"Manufacturer" = "8:SteamWare s.r.l."
"ARPHELPTELEPHONE" = "8:+39-035460560"
"ARPHELPLINK" = "8:http://www.steamware.net"
+3 -3
View File
@@ -4,7 +4,7 @@
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="392" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="692" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:ElencoCartellini" ZOrder="17" X="68" Y="333" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagMag" ZOrder="29" X="1014" Y="372" Height="190" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="75" />
@@ -15,9 +15,9 @@
<Shape ID="DesignTable:TipoCella" ZOrder="11" X="1008" Y="-2" Height="343" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
<Shape ID="DesignTable:v_UdcDetail" ZOrder="10" X="693" Y="9" Height="381" Width="212" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagImballi" ZOrder="21" X="93" Y="43" Height="156" Width="211" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="75" />
<Shape ID="DesignTable:V_ParticolariOverview" ZOrder="20" X="95" Y="1131" Height="265" Width="272" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="138" />
<Shape ID="DesignTable:V_ParticolariOverview" ZOrder="20" X="95" Y="1131" Height="229" Width="272" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<Shape ID="DesignTable:V_MagazziniOverview" ZOrder="13" X="733" Y="1102" Height="286" Width="232" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:V_DettMagPart" ZOrder="19" X="993" Y="985" Height="326" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="228" />
<Shape ID="DesignTable:V_DettMagPart" ZOrder="19" X="1030" Y="1008" Height="362" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:TipoListaPrelievo" ZOrder="6" X="735" Y="891" Height="172" Width="224" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:RigheListePrelievo" ZOrder="1" X="83" Y="846" Height="257" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="130" />
<Shape ID="DesignTable:ElencoListePrelievo" ZOrder="2" X="430" Y="879" Height="400" Width="263" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
+2 -2
View File
@@ -26,8 +26,8 @@ namespace GMW_data.Properties {
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)]
[global::System.Configuration.DefaultSettingValueAttribute("Data Source=T110-WIN2008R2\\SQL2008R2;Initial Catalog=GMW;Persist Security Info=Tr" +
"ue;User ID=sa;Password=keyhammer")]
[global::System.Configuration.DefaultSettingValueAttribute("Data Source=10.74.82.217\\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True" +
";User ID=sa;Password=keyhammer")]
public string GMWConnectionString {
get {
return ((string)(this["GMWConnectionString"]));
+2 -2
View File
@@ -5,10 +5,10 @@
<Setting Name="GMWConnectionString" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;ConnectionString&gt;Data Source=T110-WIN2008R2\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer&lt;/ConnectionString&gt;
&lt;ConnectionString&gt;Data Source=10.74.82.217\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer&lt;/ConnectionString&gt;
&lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=T110-WIN2008R2\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer</Value>
<Value Profile="(Default)">Data Source=10.74.82.217\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer</Value>
</Setting>
</Settings>
</SettingsFile>
+207
View File
@@ -0,0 +1,207 @@
-- struttura
alter table Celle add
constraint FK_Celle_TipoCella foreign key(IdxTipoCella) references TipoCella(IdxTipoCella) on update cascade
go
--
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
alter VIEW V_statoCelleCapienzaAssegnati
AS
SELECT dbo.Celle.IdxCella, dbo.Celle.CodCella, dbo.TipoCella.Capienza, ISNULL(COUNT(dbo.PosizioneUdcCorrente.UDC), 0) AS UdcAssegnati, dbo.Celle.Piena
FROM dbo.TipoCella INNER JOIN
dbo.Celle ON dbo.TipoCella.IdxTipoCella = dbo.Celle.IdxTipoCella LEFT OUTER JOIN
dbo.PosizioneUdcCorrente ON dbo.Celle.IdxCella = dbo.PosizioneUdcCorrente.IdxCella
GROUP BY dbo.TipoCella.Capienza, dbo.Celle.IdxCella, dbo.Celle.Piena, dbo.Celle.CodCella
go
commit
go
--
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/***************************************
* STORED stp_celleCreaMancantiBlocco
*
* crea il numero di celle richeiste e le assegna al blocco con valori default
*
* Steamware, S.E.L.
* mod: 2010.05.18
*
****************************************/
alter PROCEDURE stp_celleCreaMancantiBlocco
(
@CodCS VARCHAR(2),
@CodMag VARCHAR(50),
@IdxBlocco INT,
@IdxTipoCellaNew INT
)
AS
---------------------------------------------------------------------
-- setup iniziale valori XYZ del blocco
---------------------------------------------------------------------
DECLARE @CodBlocco VARCHAR(3);
SET @CodBlocco = (SELECT CodBlocco FROM Blocchi WHERE IdxBlocco = @IdxBlocco)
DECLARE @NumX INT;
DECLARE @NumY INT;
DECLARE @NumZ INT;
SET @NumX = (SELECT NumX FROM Blocchi WHERE IdxBlocco = @IdxBlocco) ;
SET @NumY = (SELECT NumY FROM Blocchi WHERE IdxBlocco = @IdxBlocco) ;
SET @NumZ = (SELECT NumZ FROM Blocchi WHERE IdxBlocco = @IdxBlocco) ;
DECLARE @Index INT ;
DECLARE @IdxTipoCella INT;
---------------------------------------------------------------------
-- creazione temp table x numeri delle dimensioni XYZ del blocco
---------------------------------------------------------------------
DECLARE @DimTable TABLE
(
dimensione VARCHAR(1),
valore INT
)
-- inserisco X
SET @Index = 1 ;
WHILE @Index <= @NumX
BEGIN
INSERT @DimTable(dimensione, valore)
VALUES ('X', @Index)
SET @Index = @Index + 1 ;
END
-- inserisco Y
SET @Index = 1 ;
WHILE @Index <= @NumY
BEGIN
INSERT @DimTable(dimensione, valore)
VALUES ('Y', @Index)
SET @Index = @Index + 1 ;
END
-- inserisco Z
SET @Index = 1 ;
WHILE @Index <= @NumZ
BEGIN
INSERT @DimTable(dimensione, valore)
VALUES ('Z', @Index)
SET @Index = @Index + 1 ;
END
---------------------------------------------------------------------
-- creazione temp table x schema COMPLETO posizioni blocco
---------------------------------------------------------------------
DECLARE @SchemaBlocco TABLE
(
X INT,
Y INT,
Z INT
)
INSERT INTO @SchemaBlocco
SELECT X_val.valore, Y_val.valore, Z_val.valore
FROM (SELECT * FROM @DimTable WHERE dimensione='X') AS X_val,
(SELECT * FROM @DimTable WHERE dimensione='Y') AS Y_val,
(SELECT * FROM @DimTable WHERE dimensione='Z') AS Z_val
----------------------------------------------------------------------------------
-- cerco primo tipo di celle per il mag indicato SE non ce ne è una specificata
----------------------------------------------------------------------------------
IF @IdxTipoCellaNew > 0
BEGIN
SET @IdxTipoCella = @IdxTipoCellaNew
END
ELSE
BEGIN
SET @IdxTipoCella = (SELECT TOP (1) ISNULL(IdxTipoCella, 0) AS IdxTipoCella
FROM TipoCella
WHERE (CodCS = @CodCS) AND (CodMag = @CodMag))
END
---------------------------------------------------------------------
-- inserisco le celle nelle posizioni LIBERE del blocco
---------------------------------------------------------------------
INSERT INTO Celle(CodCS, CodCella, IdxTipoCella, Descrizione, Attiva, Piena, IdxBlocco,X,Y,Z)
SELECT @CodCS, @CodBlocco + dbo.f_padLeft(CAST(sb.X AS VARCHAR),2,'0') + dbo.f_padLeft(CAST(sb.Y AS VARCHAR),2,'0') + dbo.f_padLeft(CAST(sb.Z AS VARCHAR),2,'0'), @IdxTipoCella, '-', 1, 0, @IdxBlocco, sb.X, sb.Y, sb.Z
FROM @SchemaBlocco sb LEFT OUTER JOIN (SELECT *
FROM Celle
WHERE IdxBlocco = @IdxBlocco) c
ON sb.X = c.X AND sb.Y = c.Y AND sb.Z = c.Z
WHERE c.IdxCella IS NULL
ORDER BY sb.X,sb.Y,sb.Z ASC
RETURN
go
commit
go
--
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/***************************************
* STORED stp_ricercaFullTerminalino
*
* effettua una ricerca full text da terminalino x codice UDC (su cartellini), x nome particolare (AnagParticolari) o posizione (Celle)
*
* Steamware, S.E.L.
* mod: 2010.09.10
*
****************************************/
create PROCEDURE stp_ricercaFullTerminalino
(
@txtSearch VARCHAR(50)
)
AS
SELECT 'UDC' AS Tipo, UDC AS label, UDC AS valore
FROM dbo.ElencoCartellini
WHERE UDC LIKE '%'+@txtSearch+'%'
UNION
SELECT 'Particolare' AS Tipo, Particolare AS label, Particolare AS valore
FROM RilPro.AnagParticolari
WHERE Particolare LIKE '%'+@txtSearch+'%'
UNION
SELECT 'Cella' AS Tipo, CodCella AS label, CAST(IdxCella AS NVARCHAR)AS valore
FROM dbo.Celle
WHERE CodCella LIKE '%'+@txtSearch+'%'
RETURN
go
commit
go
-- DATI
+1 -1
View File
@@ -4,7 +4,7 @@
</configSections>
<connectionStrings>
<add name="GMW_data.Properties.Settings.GMWConnectionString"
connectionString="Data Source=T110-WIN2008R2\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer"
connectionString="Data Source=10.74.82.217\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
Binary file not shown.
+1 -1
View File
@@ -4,7 +4,7 @@
</configSections>
<connectionStrings>
<add name="GMW_data.Properties.Settings.GMWConnectionString"
connectionString="Data Source=T110-WIN2008R2\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer"
connectionString="Data Source=10.74.82.217\SQL2008R2;Initial Catalog=GMW;Persist Security Info=True;User ID=sa;Password=keyhammer"
providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
Binary file not shown.
Binary file not shown.
Binary file not shown.
+3 -3
View File
@@ -350,7 +350,7 @@
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:GMW"
"ProductCode" = "8:{02CAA3F5-7937-48CF-A056-69AECDC9CB46}"
"PackageCode" = "8:{2660B702-C0BD-4C22-8130-D16550B26B69}"
"PackageCode" = "8:{6E7AC9FC-9342-43E6-86C9-64838131A2D9}"
"UpgradeCode" = "8:{C9BC0732-DC92-4336-BAC9-A05A5D2A97C0}"
"RestartWWWService" = "11:TRUE"
"RemovePreviousVersions" = "11:TRUE"
@@ -801,7 +801,7 @@
{
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_4FD0E5B75A7F47B79080EC0983BE6583"
{
"SourcePath" = "8:..\\..\\SetDirectoryPermission\\obj\\Debug\\SetDirectoryPermission.exe"
"SourcePath" = "8:..\\..\\SetDirectoryPermission\\obj\\Release\\SetDirectoryPermission.exe"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_5606017201AE45B480A8ABD8B8D68264"
@@ -829,7 +829,7 @@
}
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_8BDD7AA9D46A46EC80880F83F13C902E"
{
"SourcePath" = "8:..\\..\\IISCustomActionVB\\IISConsoleVB\\obj\\Debug\\IISConsoleVB.exe"
"SourcePath" = "8:..\\..\\IISCustomActionVB\\IISConsoleVB\\obj\\Release\\IISConsoleVB.exe"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_5606017201AE45B480A8ABD8B8D68264"
Binary file not shown.