Ok config x processi di stampa zoombie

This commit is contained in:
Samuele E. Locatelli
2019-09-23 15:01:06 +02:00
parent 22ba7350de
commit b9a87a46d5
7 changed files with 1051 additions and 13 deletions
+912
View File
File diff suppressed because it is too large Load Diff
+100
View File
@@ -185,6 +185,75 @@ SELECT IdxPrintJob, TipoReport, KeyParam, prtName, dtStart, dtEnd, stato, dtLast
</DbSource>
</Sources>
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="ElencoPostazioniTableAdapter" GeneratorDataComponentClassName="ElencoPostazioniTableAdapter" Name="ElencoPostazioni" UserDataComponentName="ElencoPostazioniTableAdapter">
<MainSource>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.ElencoPostazioni" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM [dbo].[ElencoPostazioni] WHERE (([codPostazione] = @Original_codPostazione) AND ((@IsNull_stampante = 1 AND [stampante] IS NULL) OR ([stampante] = @Original_stampante)) AND ((@IsNull_note = 1 AND [note] IS NULL) OR ([note] = @Original_note)))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@Original_codPostazione" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="codPostazione" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_stampante" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="stampante" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@Original_stampante" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="stampante" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_note" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="note" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@Original_note" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="note" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>INSERT INTO [dbo].[ElencoPostazioni] ([codPostazione], [stampante], [note]) VALUES (@codPostazione, @stampante, @note);
SELECT codPostazione, stampante, note FROM ElencoPostazioni WHERE (codPostazione = @codPostazione)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@codPostazione" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="codPostazione" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@stampante" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="stampante" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@note" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="note" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>SELECT codPostazione, stampante, note FROM dbo.ElencoPostazioni</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>UPDATE [dbo].[ElencoPostazioni] SET [codPostazione] = @codPostazione, [stampante] = @stampante, [note] = @note WHERE (([codPostazione] = @Original_codPostazione) AND ((@IsNull_stampante = 1 AND [stampante] IS NULL) OR ([stampante] = @Original_stampante)) AND ((@IsNull_note = 1 AND [note] IS NULL) OR ([note] = @Original_note)));
SELECT codPostazione, stampante, note FROM ElencoPostazioni WHERE (codPostazione = @codPostazione)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@codPostazione" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="codPostazione" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@stampante" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="stampante" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@note" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="note" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@Original_codPostazione" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="codPostazione" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_stampante" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="stampante" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@Original_stampante" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="stampante" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_note" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="note" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="String" Direction="Input" ParameterName="@Original_note" Precision="0" ProviderType="NVarChar" Scale="0" Size="0" SourceColumn="note" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="codPostazione" DataSetColumn="codPostazione" />
<Mapping SourceColumn="stampante" DataSetColumn="stampante" />
<Mapping SourceColumn="note" DataSetColumn="note" />
</Mappings>
<Sources>
<DbSource ConnectionRef="Sauder_NKCConnectionString (Settings)" DbObjectName="Sauder_NKC.dbo.stp_EP_getByKey" DbObjectType="StoredProcedure" GenerateMethods="Get" GenerateShortCommands="true" GeneratorGetMethodName="getByKey" GetMethodModifier="Public" GetMethodName="getByKey" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="getByKey" UserSourceName="getByKey">
<SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_EP_getByKey</CommandText>
<Parameters>
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="ReturnValue" ParameterName="@RETURN_VALUE" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@codPostaizone" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
</Sources>
</TableAdapter>
</Tables>
<Sources />
</DataSource>
@@ -253,6 +322,33 @@ SELECT IdxPrintJob, TipoReport, KeyParam, prtName, dtStart, dtEnd, stato, dtLast
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ElencoPostazioni" msprop:Generator_TableClassName="ElencoPostazioniDataTable" msprop:Generator_TableVarName="tableElencoPostazioni" msprop:Generator_TablePropName="ElencoPostazioni" msprop:Generator_RowDeletingName="ElencoPostazioniRowDeleting" msprop:Generator_RowChangingName="ElencoPostazioniRowChanging" msprop:Generator_RowEvHandlerName="ElencoPostazioniRowChangeEventHandler" msprop:Generator_RowDeletedName="ElencoPostazioniRowDeleted" msprop:Generator_UserTableName="ElencoPostazioni" msprop:Generator_RowChangedName="ElencoPostazioniRowChanged" msprop:Generator_RowEvArgName="ElencoPostazioniRowChangeEvent" msprop:Generator_RowClassName="ElencoPostazioniRow">
<xs:complexType>
<xs:sequence>
<xs:element name="codPostazione" msprop:Generator_ColumnVarNameInTable="columncodPostazione" msprop:Generator_ColumnPropNameInRow="codPostazione" msprop:Generator_ColumnPropNameInTable="codPostazioneColumn" msprop:Generator_UserColumnName="codPostazione">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="250" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="stampante" msprop:Generator_ColumnVarNameInTable="columnstampante" msprop:Generator_ColumnPropNameInRow="stampante" msprop:Generator_ColumnPropNameInTable="stampanteColumn" msprop:Generator_UserColumnName="stampante" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="250" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="note" msprop:Generator_ColumnVarNameInTable="columnnote" msprop:Generator_ColumnPropNameInRow="note" msprop:Generator_ColumnPropNameInTable="noteColumn" msprop:Generator_UserColumnName="note" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="250" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
@@ -263,5 +359,9 @@ SELECT IdxPrintJob, TipoReport, KeyParam, prtName, dtStart, dtEnd, stato, dtLast
<xs:selector xpath=".//mstns:PrintJobQueue" />
<xs:field xpath="mstns:IdxPrintJob" />
</xs:unique>
<xs:unique name="ElencoPostazioni_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:ElencoPostazioni" />
<xs:field xpath="mstns:codPostazione" />
</xs:unique>
</xs:element>
</xs:schema>
+3 -2
View File
@@ -6,8 +6,9 @@
</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="-10" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:stp_prt_StackLabel" ZOrder="2" X="70" Y="70" Height="267" Width="252" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
<Shape ID="DesignTable:PrintJobQueue" ZOrder="1" X="432" Y="94" Height="343" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:stp_prt_StackLabel" ZOrder="3" X="70" Y="70" Height="267" Width="252" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
<Shape ID="DesignTable:PrintJobQueue" ZOrder="2" X="432" Y="94" Height="343" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:ElencoPostazioni" ZOrder="1" X="861" Y="123" Height="153" Width="242" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
</Shapes>
<Connectors />
</DiagramLayout>
+27 -7
View File
@@ -14,8 +14,9 @@ namespace AppData
public DS_AppTableAdapters.StackListTableAdapter taSTL;
public DS_AppTableAdapters.SheetListTableAdapter taSHL;
// reports
public DS_ReportTableAdapters.stp_prt_StackLabelTableAdapter taRepStack;
public DS_ReportTableAdapters.ElencoPostazioniTableAdapter taElPos;
public DS_ReportTableAdapters.PrintJobQueueTableAdapter taPJQ;
public DS_ReportTableAdapters.stp_prt_StackLabelTableAdapter taRepStack;
public DataLayer()
{
@@ -34,8 +35,9 @@ namespace AppData
taSTL.Connection.ConnectionString = connString;
taSHL.Connection.ConnectionString = connString;
// reports
taRepStack.Connection.ConnectionString = connString;
taElPos.Connection.ConnectionString = connString;
taPJQ.Connection.ConnectionString = connString;
taRepStack.Connection.ConnectionString = connString;
}
private void initTA()
{
@@ -46,8 +48,9 @@ namespace AppData
taSTL = new DS_AppTableAdapters.StackListTableAdapter();
taSHL = new DS_AppTableAdapters.SheetListTableAdapter();
// reports
taRepStack = new DS_ReportTableAdapters.stp_prt_StackLabelTableAdapter();
taElPos = new DS_ReportTableAdapters.ElencoPostazioniTableAdapter();
taPJQ = new DS_ReportTableAdapters.PrintJobQueueTableAdapter();
taRepStack = new DS_ReportTableAdapters.stp_prt_StackLabelTableAdapter();
}
#endregion
@@ -151,9 +154,26 @@ namespace AppData
}
return answ;
}
/// <summary>
/// Recupera printer dato codPostazione
/// </summary>
/// <param name="codPost"></param>
/// <returns></returns>
public string getPrinter(string codPost)
{
string printer = "";
// recupero da DB...
try
{
var tabPost = DataLayer.man.taElPos.getByKey(codPost);
if (tabPost.Count == 1)
{
printer = tabPost[0].stampante;
}
}
catch
{ }
return printer;
}
}
}
+3 -3
View File
@@ -270,11 +270,11 @@ namespace AppData
// verifico eventuali processi zombie: quelli in stato 0 con LastTry superiore a data attuale meno zombieMsTime
if (memLayer.ML.CRB("disable_singleton"))
{
dtProx.taPJQ.chiudiZoombie(DateTime.Now.AddMilliseconds(-memLayer.ML.confReadInt("zombieMsTime")));
dtProx.taPJQ.chiudiZoombie(DateTime.Now.AddMilliseconds(-memLayer.ML.CRI("zombieMsTime")));
}
else
{
DataLayer.man.taPJQ.chiudiZoombie(DateTime.Now.AddMilliseconds(-memLayer.ML.confReadInt("zombieMsTime")));
DataLayer.man.taPJQ.chiudiZoombie(DateTime.Now.AddMilliseconds(-memLayer.ML.CRI("zombieMsTime")));
}
// ora inizio a fare le mie stampe...
Random rand = new Random();
@@ -426,7 +426,7 @@ namespace AppData
public void pulisciDir()
{
// num max ore di età x files "vecchi" da tenere in temp area...
int maxOre = memLayer.ML.confReadInt("maxAgeTempAreaHours");
int maxOre = memLayer.ML.CRI("maxAgeTempAreaHours");
int eliminati = 0;
// ottengo elenco files *.emf
fileMover.obj.setDirectory(@"~\temp\");
+5
View File
@@ -48,6 +48,11 @@
<add key="_logLevel" value="6"/>
<add key="_logMaxMb" value="30"/>
<add key="logMitigSec" value="30"/>
<!--Impostazione gestione serializzazione variabili in sessione (es per Redis)-->
<add key="serializeSession" value="true"/>
<add key="errorPageRedirect" value="./Reset?Action=CDV"/>
<add key="maxAgeAppConf_min" value="5"/>
<!--<add key="maxAgeAppConf_min" value="15" />-->
<!--area file upload-->
<add key="_tempUploadDir" value="~/FileUpload/"/>
<add key="_SqlDir" value="\\sql2016dev\Share\NKC"/>
@@ -153,7 +153,7 @@ namespace NKC_WF.WebUserControls
protected void lbtPrint_Click(object sender, EventArgs e)
{
// chiamo procedura stampa report x stack
string printer = "Pdf Architect 6";
string printer = DataLayer.man.getPrinter("PC-MACHINE-STACK-BUILD");
DataLayer.man.stampaDoc(StackId.ToString(), printer, tipoDocumento.docStack, Request.UserHostName);
}
}