Merge branch 'develop'

This commit is contained in:
Samuele E. Locatelli
2020-10-26 16:47:36 +01:00
22 changed files with 2269 additions and 815 deletions
+1024 -3
View File
File diff suppressed because it is too large Load Diff
+80 -13
View File
@@ -23,6 +23,7 @@
<Mapping SourceColumn="CodGruppo" DataSetColumn="CodGruppo" />
<Mapping SourceColumn="CodArt" DataSetColumn="CodArt" />
<Mapping SourceColumn="QtaRic" DataSetColumn="QtaRic" />
<Mapping SourceColumn="TimeEst" DataSetColumn="TimeEst" />
<Mapping SourceColumn="QtaEv" DataSetColumn="QtaEv" />
<Mapping SourceColumn="Prior" DataSetColumn="Prior" />
<Mapping SourceColumn="Concluso" DataSetColumn="Concluso" />
@@ -100,6 +101,7 @@
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@NumTask" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="nvarchar" DbType="String" Direction="Input" ParameterName="@CodArt" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@QtaRic" Precision="10" ProviderType="Int" Scale="0" Size="4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="float" DbType="Double" Direction="Input" ParameterName="@TimeEst" Precision="53" ProviderType="Float" Scale="0" Size="8" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
@@ -286,6 +288,7 @@ FROM v_TaskRec</CommandText>
<Mapping SourceColumn="CodTag" DataSetColumn="CodTag" />
<Mapping SourceColumn="CodArt" DataSetColumn="CodArt" />
<Mapping SourceColumn="QtaRic" DataSetColumn="QtaRic" />
<Mapping SourceColumn="TempoPrev" DataSetColumn="TempoPrev" />
<Mapping SourceColumn="CodOpr" DataSetColumn="CodOpr" />
<Mapping SourceColumn="NomeOpr" DataSetColumn="NomeOpr" />
<Mapping SourceColumn="CodPost" DataSetColumn="CodPost" />
@@ -1126,6 +1129,36 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</DbSource>
</Sources>
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TaskRecAggTableAdapter" GeneratorDataComponentClassName="TaskRecAggTableAdapter" Name="TaskRecAgg" UserDataComponentName="TaskRecAggTableAdapter">
<MainSource>
<DbSource ConnectionRef="C_TRACKConnectionString (Settings)" DbObjectName="C_TRACK.dbo.stp_TRA_GetByFilt" DbObjectType="StoredProcedure" GenerateMethods="Get" GenerateShortCommands="false" GeneratorGetMethodName="getByFilt" GetMethodModifier="Public" GetMethodName="getByFilt" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="getByFilt" UserSourceName="getByFilt">
<SelectCommand>
<DbCommand CommandType="StoredProcedure" ModifiedByUser="false">
<CommandText>dbo.stp_TRA_GetByFilt</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="@CodArt" Precision="0" ProviderType="NVarChar" Scale="0" Size="50" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="datetime" DbType="DateTime" Direction="Input" ParameterName="@DtFrom" Precision="23" ProviderType="DateTime" Scale="3" Size="8" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DataTypeServer="datetime" DbType="DateTime" Direction="Input" ParameterName="@DtTo" Precision="23" ProviderType="DateTime" Scale="3" Size="8" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="NumTask" DataSetColumn="NumTask" />
<Mapping SourceColumn="CodArt" DataSetColumn="CodArt" />
<Mapping SourceColumn="QtaRic" DataSetColumn="QtaRic" />
<Mapping SourceColumn="TempoPrev" DataSetColumn="TempoPrev" />
<Mapping SourceColumn="IdxRec" DataSetColumn="IdxRec" />
<Mapping SourceColumn="DtStart" DataSetColumn="DtStart" />
<Mapping SourceColumn="DtEnd" DataSetColumn="DtEnd" />
<Mapping SourceColumn="QtaEv" DataSetColumn="QtaEv" />
<Mapping SourceColumn="DurataMin" DataSetColumn="DurataMin" />
<Mapping SourceColumn="TCiclo" DataSetColumn="TCiclo" />
</Mappings>
<Sources />
</TableAdapter>
</Tables>
<Sources />
</DataSource>
@@ -1134,7 +1167,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
<xs:element name="DS_App" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DS_App" msprop:Generator_UserDSName="DS_App">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="TaskList" msprop:Generator_TableClassName="TaskListDataTable" msprop:Generator_TableVarName="tableTaskList" msprop:Generator_TablePropName="TaskList" msprop:Generator_RowDeletingName="TaskListRowDeleting" msprop:Generator_RowChangingName="TaskListRowChanging" msprop:Generator_RowEvHandlerName="TaskListRowChangeEventHandler" msprop:Generator_RowDeletedName="TaskListRowDeleted" msprop:Generator_UserTableName="TaskList" msprop:Generator_RowChangedName="TaskListRowChanged" msprop:Generator_RowEvArgName="TaskListRowChangeEvent" msprop:Generator_RowClassName="TaskListRow">
<xs:element name="TaskList" msprop:Generator_TableClassName="TaskListDataTable" msprop:Generator_TableVarName="tableTaskList" msprop:Generator_RowChangedName="TaskListRowChanged" msprop:Generator_TablePropName="TaskList" msprop:Generator_RowDeletingName="TaskListRowDeleting" msprop:Generator_RowChangingName="TaskListRowChanging" msprop:Generator_RowEvHandlerName="TaskListRowChangeEventHandler" msprop:Generator_RowDeletedName="TaskListRowDeleted" msprop:Generator_RowClassName="TaskListRow" msprop:Generator_UserTableName="TaskList" msprop:Generator_RowEvArgName="TaskListRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="NumTask" msprop:Generator_ColumnVarNameInTable="columnNumTask" msprop:Generator_ColumnPropNameInRow="NumTask" msprop:Generator_ColumnPropNameInTable="NumTaskColumn" msprop:Generator_UserColumnName="NumTask">
@@ -1159,6 +1192,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:simpleType>
</xs:element>
<xs:element name="QtaRic" msprop:Generator_ColumnVarNameInTable="columnQtaRic" msprop:Generator_ColumnPropNameInRow="QtaRic" msprop:Generator_ColumnPropNameInTable="QtaRicColumn" msprop:Generator_UserColumnName="QtaRic" type="xs:int" />
<xs:element name="TimeEst" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnTimeEst" msprop:Generator_ColumnPropNameInRow="TimeEst" msprop:Generator_ColumnPropNameInTable="TimeEstColumn" msprop:Generator_UserColumnName="TimeEst" type="xs:decimal" minOccurs="0" />
<xs:element name="QtaEv" msprop:Generator_ColumnVarNameInTable="columnQtaEv" msprop:Generator_ColumnPropNameInRow="QtaEv" msprop:Generator_ColumnPropNameInTable="QtaEvColumn" msprop:Generator_UserColumnName="QtaEv" type="xs:int" minOccurs="0" />
<xs:element name="Prior" msprop:Generator_ColumnVarNameInTable="columnPrior" msprop:Generator_ColumnPropNameInRow="Prior" msprop:Generator_ColumnPropNameInTable="PriorColumn" msprop:Generator_UserColumnName="Prior" type="xs:int" />
<xs:element name="Concluso" msprop:Generator_ColumnVarNameInTable="columnConcluso" msprop:Generator_ColumnPropNameInRow="Concluso" msprop:Generator_ColumnPropNameInTable="ConclusoColumn" msprop:Generator_UserColumnName="Concluso" type="xs:boolean" />
@@ -1171,7 +1205,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AnagFasi" msprop:Generator_TableClassName="AnagFasiDataTable" msprop:Generator_TableVarName="tableAnagFasi" msprop:Generator_TablePropName="AnagFasi" msprop:Generator_RowDeletingName="AnagFasiRowDeleting" msprop:Generator_RowChangingName="AnagFasiRowChanging" msprop:Generator_RowEvHandlerName="AnagFasiRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagFasiRowDeleted" msprop:Generator_UserTableName="AnagFasi" msprop:Generator_RowChangedName="AnagFasiRowChanged" msprop:Generator_RowEvArgName="AnagFasiRowChangeEvent" msprop:Generator_RowClassName="AnagFasiRow">
<xs:element name="AnagFasi" msprop:Generator_TableClassName="AnagFasiDataTable" msprop:Generator_TableVarName="tableAnagFasi" msprop:Generator_RowChangedName="AnagFasiRowChanged" msprop:Generator_TablePropName="AnagFasi" msprop:Generator_RowDeletingName="AnagFasiRowDeleting" msprop:Generator_RowChangingName="AnagFasiRowChanging" msprop:Generator_RowEvHandlerName="AnagFasiRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagFasiRowDeleted" msprop:Generator_RowClassName="AnagFasiRow" msprop:Generator_UserTableName="AnagFasi" msprop:Generator_RowEvArgName="AnagFasiRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="CodFase" msprop:Generator_ColumnVarNameInTable="columnCodFase" msprop:Generator_ColumnPropNameInRow="CodFase" msprop:Generator_ColumnPropNameInTable="CodFaseColumn" msprop:Generator_UserColumnName="CodFase">
@@ -1193,7 +1227,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AnagOpr" msprop:Generator_TableClassName="AnagOprDataTable" msprop:Generator_TableVarName="tableAnagOpr" msprop:Generator_TablePropName="AnagOpr" msprop:Generator_RowDeletingName="AnagOprRowDeleting" msprop:Generator_RowChangingName="AnagOprRowChanging" msprop:Generator_RowEvHandlerName="AnagOprRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagOprRowDeleted" msprop:Generator_UserTableName="AnagOpr" msprop:Generator_RowChangedName="AnagOprRowChanged" msprop:Generator_RowEvArgName="AnagOprRowChangeEvent" msprop:Generator_RowClassName="AnagOprRow">
<xs:element name="AnagOpr" msprop:Generator_TableClassName="AnagOprDataTable" msprop:Generator_TableVarName="tableAnagOpr" msprop:Generator_RowChangedName="AnagOprRowChanged" msprop:Generator_TablePropName="AnagOpr" msprop:Generator_RowDeletingName="AnagOprRowDeleting" msprop:Generator_RowChangingName="AnagOprRowChanging" msprop:Generator_RowEvHandlerName="AnagOprRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagOprRowDeleted" msprop:Generator_RowClassName="AnagOprRow" msprop:Generator_UserTableName="AnagOpr" msprop:Generator_RowEvArgName="AnagOprRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="CodOpr" msprop:Generator_ColumnVarNameInTable="columnCodOpr" msprop:Generator_ColumnPropNameInRow="CodOpr" msprop:Generator_ColumnPropNameInTable="CodOprColumn" msprop:Generator_UserColumnName="CodOpr">
@@ -1220,7 +1254,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TaskRec" msprop:Generator_TableClassName="TaskRecDataTable" msprop:Generator_TableVarName="tableTaskRec" msprop:Generator_TablePropName="TaskRec" msprop:Generator_RowDeletingName="TaskRecRowDeleting" msprop:Generator_RowChangingName="TaskRecRowChanging" msprop:Generator_RowEvHandlerName="TaskRecRowChangeEventHandler" msprop:Generator_RowDeletedName="TaskRecRowDeleted" msprop:Generator_UserTableName="TaskRec" msprop:Generator_RowChangedName="TaskRecRowChanged" msprop:Generator_RowEvArgName="TaskRecRowChangeEvent" msprop:Generator_RowClassName="TaskRecRow">
<xs:element name="TaskRec" msprop:Generator_TableClassName="TaskRecDataTable" msprop:Generator_TableVarName="tableTaskRec" msprop:Generator_RowChangedName="TaskRecRowChanged" msprop:Generator_TablePropName="TaskRec" msprop:Generator_RowDeletingName="TaskRecRowDeleting" msprop:Generator_RowChangingName="TaskRecRowChanging" msprop:Generator_RowEvHandlerName="TaskRecRowChangeEventHandler" msprop:Generator_RowDeletedName="TaskRecRowDeleted" msprop:Generator_RowClassName="TaskRecRow" msprop:Generator_UserTableName="TaskRec" msprop:Generator_RowEvArgName="TaskRecRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="IdxRec" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnIdxRec" msprop:Generator_ColumnPropNameInRow="IdxRec" msprop:Generator_ColumnPropNameInTable="IdxRecColumn" msprop:Generator_UserColumnName="IdxRec" type="xs:int" />
@@ -1246,6 +1280,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:simpleType>
</xs:element>
<xs:element name="QtaRic" msprop:Generator_ColumnVarNameInTable="columnQtaRic" msprop:Generator_ColumnPropNameInRow="QtaRic" msprop:Generator_ColumnPropNameInTable="QtaRicColumn" msprop:Generator_UserColumnName="QtaRic" type="xs:int" />
<xs:element name="TempoPrev" msprop:Generator_ColumnVarNameInTable="columnTempoPrev" msprop:Generator_ColumnPropNameInRow="TempoPrev" msprop:Generator_ColumnPropNameInTable="TempoPrevColumn" msprop:Generator_UserColumnName="TempoPrev" type="xs:decimal" />
<xs:element name="CodOpr" msprop:Generator_ColumnVarNameInTable="columnCodOpr" msprop:Generator_ColumnPropNameInRow="CodOpr" msprop:Generator_ColumnPropNameInTable="CodOprColumn" msprop:Generator_UserColumnName="CodOpr">
<xs:simpleType>
<xs:restriction base="xs:string">
@@ -1296,7 +1331,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AnagPost" msprop:Generator_TableClassName="AnagPostDataTable" msprop:Generator_TableVarName="tableAnagPost" msprop:Generator_TablePropName="AnagPost" msprop:Generator_RowDeletingName="AnagPostRowDeleting" msprop:Generator_RowChangingName="AnagPostRowChanging" msprop:Generator_RowEvHandlerName="AnagPostRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagPostRowDeleted" msprop:Generator_UserTableName="AnagPost" msprop:Generator_RowChangedName="AnagPostRowChanged" msprop:Generator_RowEvArgName="AnagPostRowChangeEvent" msprop:Generator_RowClassName="AnagPostRow">
<xs:element name="AnagPost" msprop:Generator_TableClassName="AnagPostDataTable" msprop:Generator_TableVarName="tableAnagPost" msprop:Generator_RowChangedName="AnagPostRowChanged" msprop:Generator_TablePropName="AnagPost" msprop:Generator_RowDeletingName="AnagPostRowDeleting" msprop:Generator_RowChangingName="AnagPostRowChanging" msprop:Generator_RowEvHandlerName="AnagPostRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagPostRowDeleted" msprop:Generator_RowClassName="AnagPostRow" msprop:Generator_UserTableName="AnagPost" msprop:Generator_RowEvArgName="AnagPostRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="CodPost" msprop:Generator_ColumnVarNameInTable="columnCodPost" msprop:Generator_ColumnPropNameInRow="CodPost" msprop:Generator_ColumnPropNameInTable="CodPostColumn" msprop:Generator_UserColumnName="CodPost">
@@ -1338,7 +1373,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TraEv2Stati" msprop:Generator_TableClassName="TraEv2StatiDataTable" msprop:Generator_TableVarName="tableTraEv2Stati" msprop:Generator_TablePropName="TraEv2Stati" msprop:Generator_RowDeletingName="TraEv2StatiRowDeleting" msprop:Generator_RowChangingName="TraEv2StatiRowChanging" msprop:Generator_RowEvHandlerName="TraEv2StatiRowChangeEventHandler" msprop:Generator_RowDeletedName="TraEv2StatiRowDeleted" msprop:Generator_UserTableName="TraEv2Stati" msprop:Generator_RowChangedName="TraEv2StatiRowChanged" msprop:Generator_RowEvArgName="TraEv2StatiRowChangeEvent" msprop:Generator_RowClassName="TraEv2StatiRow">
<xs:element name="TraEv2Stati" msprop:Generator_TableClassName="TraEv2StatiDataTable" msprop:Generator_TableVarName="tableTraEv2Stati" msprop:Generator_RowChangedName="TraEv2StatiRowChanged" msprop:Generator_TablePropName="TraEv2Stati" msprop:Generator_RowDeletingName="TraEv2StatiRowDeleting" msprop:Generator_RowChangingName="TraEv2StatiRowChanging" msprop:Generator_RowEvHandlerName="TraEv2StatiRowChangeEventHandler" msprop:Generator_RowDeletedName="TraEv2StatiRowDeleted" msprop:Generator_RowClassName="TraEv2StatiRow" msprop:Generator_UserTableName="TraEv2Stati" msprop:Generator_RowEvArgName="TraEv2StatiRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="CodMappa" msprop:Generator_ColumnVarNameInTable="columnCodMappa" msprop:Generator_ColumnPropNameInRow="CodMappa" msprop:Generator_ColumnPropNameInTable="CodMappaColumn" msprop:Generator_UserColumnName="CodMappa">
@@ -1400,7 +1435,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AnagEventi" msprop:Generator_TableClassName="AnagEventiDataTable" msprop:Generator_TableVarName="tableAnagEventi" msprop:Generator_TablePropName="AnagEventi" msprop:Generator_RowDeletingName="AnagEventiRowDeleting" msprop:Generator_RowChangingName="AnagEventiRowChanging" msprop:Generator_RowEvHandlerName="AnagEventiRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagEventiRowDeleted" msprop:Generator_UserTableName="AnagEventi" msprop:Generator_RowChangedName="AnagEventiRowChanged" msprop:Generator_RowEvArgName="AnagEventiRowChangeEvent" msprop:Generator_RowClassName="AnagEventiRow">
<xs:element name="AnagEventi" msprop:Generator_TableClassName="AnagEventiDataTable" msprop:Generator_TableVarName="tableAnagEventi" msprop:Generator_RowChangedName="AnagEventiRowChanged" msprop:Generator_TablePropName="AnagEventi" msprop:Generator_RowDeletingName="AnagEventiRowDeleting" msprop:Generator_RowChangingName="AnagEventiRowChanging" msprop:Generator_RowEvHandlerName="AnagEventiRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagEventiRowDeleted" msprop:Generator_RowClassName="AnagEventiRow" msprop:Generator_UserTableName="AnagEventi" msprop:Generator_RowEvArgName="AnagEventiRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="CodEvento" msprop:Generator_ColumnVarNameInTable="columnCodEvento" msprop:Generator_ColumnPropNameInRow="CodEvento" msprop:Generator_ColumnPropNameInTable="CodEventoColumn" msprop:Generator_UserColumnName="CodEvento">
@@ -1434,7 +1469,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="PODL" msprop:Generator_TableClassName="PODLDataTable" msprop:Generator_TableVarName="tablePODL" msprop:Generator_RowChangedName="PODLRowChanged" msprop:Generator_TablePropName="PODL" msprop:Generator_RowDeletingName="PODLRowDeleting" msprop:Generator_RowChangingName="PODLRowChanging" msprop:Generator_RowEvHandlerName="PODLRowChangeEventHandler" msprop:Generator_RowDeletedName="PODLRowDeleted" msprop:Generator_RowClassName="PODLRow" msprop:Generator_UserTableName="PODL" msprop:Generator_RowEvArgName="PODLRowChangeEvent">
<xs:element name="PODL" msprop:Generator_TableClassName="PODLDataTable" msprop:Generator_TableVarName="tablePODL" msprop:Generator_TablePropName="PODL" msprop:Generator_RowDeletingName="PODLRowDeleting" msprop:Generator_RowChangingName="PODLRowChanging" msprop:Generator_RowEvHandlerName="PODLRowChangeEventHandler" msprop:Generator_RowDeletedName="PODLRowDeleted" msprop:Generator_UserTableName="PODL" msprop:Generator_RowChangedName="PODLRowChanged" msprop:Generator_RowEvArgName="PODLRowChangeEvent" msprop:Generator_RowClassName="PODLRow">
<xs:complexType>
<xs:sequence>
<xs:element name="idxPromessa" msprop:Generator_ColumnVarNameInTable="columnidxPromessa" msprop:Generator_ColumnPropNameInRow="idxPromessa" msprop:Generator_ColumnPropNameInTable="idxPromessaColumn" msprop:Generator_UserColumnName="idxPromessa" type="xs:int" />
@@ -1526,7 +1561,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AnagArticoli" msprop:Generator_TableClassName="AnagArticoliDataTable" msprop:Generator_TableVarName="tableAnagArticoli" msprop:Generator_RowChangedName="AnagArticoliRowChanged" msprop:Generator_TablePropName="AnagArticoli" msprop:Generator_RowDeletingName="AnagArticoliRowDeleting" msprop:Generator_RowChangingName="AnagArticoliRowChanging" msprop:Generator_RowEvHandlerName="AnagArticoliRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagArticoliRowDeleted" msprop:Generator_RowClassName="AnagArticoliRow" msprop:Generator_UserTableName="AnagArticoli" msprop:Generator_RowEvArgName="AnagArticoliRowChangeEvent">
<xs:element name="AnagArticoli" msprop:Generator_TableClassName="AnagArticoliDataTable" msprop:Generator_TableVarName="tableAnagArticoli" msprop:Generator_TablePropName="AnagArticoli" msprop:Generator_RowDeletingName="AnagArticoliRowDeleting" msprop:Generator_RowChangingName="AnagArticoliRowChanging" msprop:Generator_RowEvHandlerName="AnagArticoliRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagArticoliRowDeleted" msprop:Generator_UserTableName="AnagArticoli" msprop:Generator_RowChangedName="AnagArticoliRowChanged" msprop:Generator_RowEvArgName="AnagArticoliRowChangeEvent" msprop:Generator_RowClassName="AnagArticoliRow">
<xs:complexType>
<xs:sequence>
<xs:element name="CodArt" msprop:Generator_ColumnVarNameInTable="columnCodArt" msprop:Generator_ColumnPropNameInRow="CodArt" msprop:Generator_ColumnPropNameInTable="CodArtColumn" msprop:Generator_UserColumnName="CodArt">
@@ -1575,7 +1610,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TaskList2Post" msprop:Generator_TableClassName="TaskList2PostDataTable" msprop:Generator_TableVarName="tableTaskList2Post" msprop:Generator_TablePropName="TaskList2Post" msprop:Generator_RowDeletingName="TaskList2PostRowDeleting" msprop:Generator_RowChangingName="TaskList2PostRowChanging" msprop:Generator_RowEvHandlerName="TaskList2PostRowChangeEventHandler" msprop:Generator_RowDeletedName="TaskList2PostRowDeleted" msprop:Generator_UserTableName="TaskList2Post" msprop:Generator_RowChangedName="TaskList2PostRowChanged" msprop:Generator_RowEvArgName="TaskList2PostRowChangeEvent" msprop:Generator_RowClassName="TaskList2PostRow">
<xs:element name="TaskList2Post" msprop:Generator_TableClassName="TaskList2PostDataTable" msprop:Generator_TableVarName="tableTaskList2Post" msprop:Generator_RowChangedName="TaskList2PostRowChanged" msprop:Generator_TablePropName="TaskList2Post" msprop:Generator_RowDeletingName="TaskList2PostRowDeleting" msprop:Generator_RowChangingName="TaskList2PostRowChanging" msprop:Generator_RowEvHandlerName="TaskList2PostRowChangeEventHandler" msprop:Generator_RowDeletedName="TaskList2PostRowDeleted" msprop:Generator_RowClassName="TaskList2PostRow" msprop:Generator_UserTableName="TaskList2Post" msprop:Generator_RowEvArgName="TaskList2PostRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="NumTask" msprop:Generator_ColumnVarNameInTable="columnNumTask" msprop:Generator_ColumnPropNameInRow="NumTask" msprop:Generator_ColumnPropNameInTable="NumTaskColumn" msprop:Generator_UserColumnName="NumTask">
@@ -1635,7 +1670,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AnagStati" msprop:Generator_TableClassName="AnagStatiDataTable" msprop:Generator_TableVarName="tableAnagStati" msprop:Generator_TablePropName="AnagStati" msprop:Generator_RowDeletingName="AnagStatiRowDeleting" msprop:Generator_RowChangingName="AnagStatiRowChanging" msprop:Generator_RowEvHandlerName="AnagStatiRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagStatiRowDeleted" msprop:Generator_UserTableName="AnagStati" msprop:Generator_RowChangedName="AnagStatiRowChanged" msprop:Generator_RowEvArgName="AnagStatiRowChangeEvent" msprop:Generator_RowClassName="AnagStatiRow">
<xs:element name="AnagStati" msprop:Generator_TableClassName="AnagStatiDataTable" msprop:Generator_TableVarName="tableAnagStati" msprop:Generator_RowChangedName="AnagStatiRowChanged" msprop:Generator_TablePropName="AnagStati" msprop:Generator_RowDeletingName="AnagStatiRowDeleting" msprop:Generator_RowChangingName="AnagStatiRowChanging" msprop:Generator_RowEvHandlerName="AnagStatiRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagStatiRowDeleted" msprop:Generator_RowClassName="AnagStatiRow" msprop:Generator_UserTableName="AnagStati" msprop:Generator_RowEvArgName="AnagStatiRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="CodStato" msprop:Generator_ColumnVarNameInTable="columnCodStato" msprop:Generator_ColumnPropNameInRow="CodStato" msprop:Generator_ColumnPropNameInTable="CodStatoColumn" msprop:Generator_UserColumnName="CodStato">
@@ -1663,7 +1698,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Opr2Post" msprop:Generator_TableClassName="Opr2PostDataTable" msprop:Generator_TableVarName="tableOpr2Post" msprop:Generator_TablePropName="Opr2Post" msprop:Generator_RowDeletingName="Opr2PostRowDeleting" msprop:Generator_RowChangingName="Opr2PostRowChanging" msprop:Generator_RowEvHandlerName="Opr2PostRowChangeEventHandler" msprop:Generator_RowDeletedName="Opr2PostRowDeleted" msprop:Generator_UserTableName="Opr2Post" msprop:Generator_RowChangedName="Opr2PostRowChanged" msprop:Generator_RowEvArgName="Opr2PostRowChangeEvent" msprop:Generator_RowClassName="Opr2PostRow">
<xs:element name="Opr2Post" msprop:Generator_TableClassName="Opr2PostDataTable" msprop:Generator_TableVarName="tableOpr2Post" msprop:Generator_RowChangedName="Opr2PostRowChanged" msprop:Generator_TablePropName="Opr2Post" msprop:Generator_RowDeletingName="Opr2PostRowDeleting" msprop:Generator_RowChangingName="Opr2PostRowChanging" msprop:Generator_RowEvHandlerName="Opr2PostRowChangeEventHandler" msprop:Generator_RowDeletedName="Opr2PostRowDeleted" msprop:Generator_RowClassName="Opr2PostRow" msprop:Generator_UserTableName="Opr2Post" msprop:Generator_RowEvArgName="Opr2PostRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="CodOpr" msprop:Generator_ColumnVarNameInTable="columnCodOpr" msprop:Generator_ColumnPropNameInRow="CodOpr" msprop:Generator_ColumnPropNameInTable="CodOprColumn" msprop:Generator_UserColumnName="CodOpr">
@@ -1698,7 +1733,7 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="AnagTag" msprop:Generator_TableClassName="AnagTagDataTable" msprop:Generator_TableVarName="tableAnagTag" msprop:Generator_TablePropName="AnagTag" msprop:Generator_RowDeletingName="AnagTagRowDeleting" msprop:Generator_RowChangingName="AnagTagRowChanging" msprop:Generator_RowEvHandlerName="AnagTagRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagTagRowDeleted" msprop:Generator_UserTableName="AnagTag" msprop:Generator_RowChangedName="AnagTagRowChanged" msprop:Generator_RowEvArgName="AnagTagRowChangeEvent" msprop:Generator_RowClassName="AnagTagRow">
<xs:element name="AnagTag" msprop:Generator_TableClassName="AnagTagDataTable" msprop:Generator_TableVarName="tableAnagTag" msprop:Generator_RowChangedName="AnagTagRowChanged" msprop:Generator_TablePropName="AnagTag" msprop:Generator_RowDeletingName="AnagTagRowDeleting" msprop:Generator_RowChangingName="AnagTagRowChanging" msprop:Generator_RowEvHandlerName="AnagTagRowChangeEventHandler" msprop:Generator_RowDeletedName="AnagTagRowDeleted" msprop:Generator_RowClassName="AnagTagRow" msprop:Generator_UserTableName="AnagTag" msprop:Generator_RowEvArgName="AnagTagRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="CodTag" msprop:Generator_ColumnVarNameInTable="columnCodTag" msprop:Generator_ColumnPropNameInRow="CodTag" msprop:Generator_ColumnPropNameInTable="CodTagColumn" msprop:Generator_UserColumnName="CodTag">
@@ -1725,6 +1760,34 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TaskRecAgg" msprop:Generator_TableClassName="TaskRecAggDataTable" msprop:Generator_TableVarName="tableTaskRecAgg" msprop:Generator_TablePropName="TaskRecAgg" msprop:Generator_RowDeletingName="TaskRecAggRowDeleting" msprop:Generator_RowChangingName="TaskRecAggRowChanging" msprop:Generator_RowEvHandlerName="TaskRecAggRowChangeEventHandler" msprop:Generator_RowDeletedName="TaskRecAggRowDeleted" msprop:Generator_UserTableName="TaskRecAgg" msprop:Generator_RowChangedName="TaskRecAggRowChanged" msprop:Generator_RowEvArgName="TaskRecAggRowChangeEvent" msprop:Generator_RowClassName="TaskRecAggRow">
<xs:complexType>
<xs:sequence>
<xs:element name="NumTask" msprop:Generator_ColumnVarNameInTable="columnNumTask" msprop:Generator_ColumnPropNameInRow="NumTask" msprop:Generator_ColumnPropNameInTable="NumTaskColumn" msprop:Generator_UserColumnName="NumTask">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CodArt" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnCodArt" msprop:Generator_ColumnPropNameInRow="CodArt" msprop:Generator_ColumnPropNameInTable="CodArtColumn" msprop:Generator_UserColumnName="CodArt" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="QtaRic" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnQtaRic" msprop:Generator_ColumnPropNameInRow="QtaRic" msprop:Generator_ColumnPropNameInTable="QtaRicColumn" msprop:Generator_UserColumnName="QtaRic" type="xs:int" minOccurs="0" />
<xs:element name="TempoPrev" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnTempoPrev" msprop:Generator_ColumnPropNameInRow="TempoPrev" msprop:Generator_ColumnPropNameInTable="TempoPrevColumn" msprop:Generator_UserColumnName="TempoPrev" type="xs:decimal" minOccurs="0" />
<xs:element name="IdxRec" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnIdxRec" msprop:Generator_ColumnPropNameInRow="IdxRec" msprop:Generator_ColumnPropNameInTable="IdxRecColumn" msprop:Generator_UserColumnName="IdxRec" type="xs:int" minOccurs="0" />
<xs:element name="DtStart" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnDtStart" msprop:Generator_ColumnPropNameInRow="DtStart" msprop:Generator_ColumnPropNameInTable="DtStartColumn" msprop:Generator_UserColumnName="DtStart" type="xs:dateTime" minOccurs="0" />
<xs:element name="DtEnd" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnDtEnd" msprop:Generator_ColumnPropNameInRow="DtEnd" msprop:Generator_ColumnPropNameInTable="DtEndColumn" msprop:Generator_UserColumnName="DtEnd" type="xs:dateTime" minOccurs="0" />
<xs:element name="QtaEv" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnQtaEv" msprop:Generator_ColumnPropNameInRow="QtaEv" msprop:Generator_ColumnPropNameInTable="QtaEvColumn" msprop:Generator_UserColumnName="QtaEv" type="xs:int" minOccurs="0" />
<xs:element name="DurataMin" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnDurataMin" msprop:Generator_ColumnPropNameInRow="DurataMin" msprop:Generator_ColumnPropNameInTable="DurataMinColumn" msprop:Generator_UserColumnName="DurataMin" type="xs:decimal" minOccurs="0" />
<xs:element name="TCiclo" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnTCiclo" msprop:Generator_ColumnPropNameInRow="TCiclo" msprop:Generator_ColumnPropNameInTable="TCicloColumn" msprop:Generator_UserColumnName="TCiclo" type="xs:decimal" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
@@ -1774,5 +1837,9 @@ SELECT CodTag, TipoTag, DescrTag FROM AnagTag WHERE (CodTag = @CodTag)</CommandT
<xs:selector xpath=".//mstns:AnagTag" />
<xs:field xpath="mstns:CodTag" />
</xs:unique>
<xs:unique name="TaskRecAgg_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:TaskRecAgg" />
<xs:field xpath="mstns:NumTask" />
</xs:unique>
</xs:element>
</xs:schema>
+15 -14
View File
@@ -4,21 +4,22 @@
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="-10" 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="304" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:TaskList" ZOrder="7" X="91" Y="386" Height="381" Width="289" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagFasi" ZOrder="10" X="887" Y="474" Height="191" Width="197" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:AnagOpr" ZOrder="13" X="910" Y="728" Height="153" Width="197" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
<Shape ID="DesignTable:TaskRec" ZOrder="3" X="519" Y="541" Height="457" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="306" />
<Shape ID="DesignTable:AnagPost" ZOrder="9" X="519" Y="209" Height="267" Width="200" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:TraEv2Stati" ZOrder="12" X="195" Y="1020" Height="248" Width="210" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:AnagEventi" ZOrder="11" X="903" Y="966" Height="172" Width="211" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:PODL" ZOrder="8" X="560" Y="1047" Height="343" Width="199" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagArticoli" ZOrder="6" X="258" Y="1475" Height="229" Width="217" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:TaskList2Post" ZOrder="1" X="809" Y="16" Height="400" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagStati" ZOrder="5" X="220" Y="54" Height="191" Width="201" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:Opr2Post" ZOrder="4" X="175" Y="774" Height="229" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<Shape ID="DesignTable:AnagTag" ZOrder="2" X="563" Y="18" Height="153" Width="196" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
<Shape ID="DesignTable:TaskList" ZOrder="2" X="85" Y="299" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagFasi" ZOrder="11" X="887" Y="474" Height="191" Width="197" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:AnagOpr" ZOrder="14" X="910" Y="728" Height="153" Width="197" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
<Shape ID="DesignTable:TaskRec" ZOrder="5" X="519" Y="541" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagPost" ZOrder="10" X="519" Y="209" Height="267" Width="200" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:TraEv2Stati" ZOrder="13" X="195" Y="1020" Height="248" Width="210" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:AnagEventi" ZOrder="12" X="903" Y="966" Height="172" Width="211" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:PODL" ZOrder="9" X="560" Y="1047" Height="343" Width="199" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagArticoli" ZOrder="8" X="152" Y="1317" Height="229" Width="217" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:TaskList2Post" ZOrder="3" X="809" Y="16" Height="381" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
<Shape ID="DesignTable:AnagStati" ZOrder="7" X="220" Y="54" Height="191" Width="201" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="102" />
<Shape ID="DesignTable:Opr2Post" ZOrder="6" X="175" Y="774" Height="229" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<Shape ID="DesignTable:AnagTag" ZOrder="4" X="563" Y="18" Height="153" Width="196" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="83" />
<Shape ID="DesignTable:TaskRecAgg" ZOrder="1" X="833" Y="1202" Height="267" Width="232" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="216" />
</Shapes>
<Connectors />
</DiagramLayout>
+141 -110
View File
@@ -2,115 +2,146 @@
namespace AppData
{
public class dataLayer
{
/// <summary>
/// avvio classe
/// </summary>
protected dataLayer()
public class dataLayer
{
avvioTA();
setupConnectionStringBase();
#region Public Fields
/// <summary>
/// singleton classe
/// </summary>
public static dataLayer man = new dataLayer();
/// <summary>
/// Elenco POSTAZIONI
/// </summary>
public DS_AppTableAdapters.AnagFasiTableAdapter taAF;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_UtilityTableAdapters.AnagKeyValueTableAdapter taAKV;
/// <summary>
/// Elenco ARTICOLI
/// </summary>
public DS_AppTableAdapters.AnagArticoliTableAdapter taAnArt;
/// <summary>
/// Elenco OPERATORI
/// </summary>
public DS_AppTableAdapters.AnagOprTableAdapter taAO;
/// <summary>
/// Elenco POSTAZIONI
/// </summary>
public DS_AppTableAdapters.AnagPostTableAdapter taAP;
/// <summary>
/// Elenco TAG
/// </summary>
public DS_AppTableAdapters.AnagTagTableAdapter taAT;
/// <summary>
/// Elenco PROMESSE ODL
/// </summary>
public DS_AppTableAdapters.Opr2PostTableAdapter taO2P;
/// <summary>
/// Elenco PROMESSE ODL
/// </summary>
public DS_AppTableAdapters.PODLTableAdapter taPODL;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_AppTableAdapters.TraEv2StatiTableAdapter taTE2S;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_AppTableAdapters.TaskListTableAdapter taTL;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_AppTableAdapters.TaskList2PostTableAdapter taTL2Post;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_AppTableAdapters.TaskRecTableAdapter taTR;
/// <summary>
/// Elenco TASK Aggregati
/// </summary>
public DS_AppTableAdapters.TaskRecAggTableAdapter taTRA;
#endregion Public Fields
#region Protected Constructors
/// <summary>
/// avvio classe
/// </summary>
protected dataLayer()
{
avvioTA();
setupConnectionStringBase();
}
#endregion Protected Constructors
#region Private Methods
/// <summary>
/// avvia table adapters
/// </summary>
private void avvioTA()
{
// avvio i table adapters...
taAnArt = new DS_AppTableAdapters.AnagArticoliTableAdapter();
taAF = new DS_AppTableAdapters.AnagFasiTableAdapter();
taAO = new DS_AppTableAdapters.AnagOprTableAdapter();
taAP = new DS_AppTableAdapters.AnagPostTableAdapter();
taAT = new DS_AppTableAdapters.AnagTagTableAdapter();
taO2P = new DS_AppTableAdapters.Opr2PostTableAdapter();
taPODL = new DS_AppTableAdapters.PODLTableAdapter();
taTL = new DS_AppTableAdapters.TaskListTableAdapter();
taTL2Post = new DS_AppTableAdapters.TaskList2PostTableAdapter();
taTR = new DS_AppTableAdapters.TaskRecTableAdapter();
taTRA = new DS_AppTableAdapters.TaskRecAggTableAdapter();
taTE2S = new DS_AppTableAdapters.TraEv2StatiTableAdapter();
taAKV = new DS_UtilityTableAdapters.AnagKeyValueTableAdapter();
}
#endregion Private Methods
#region Protected Methods
/// <summary>
/// effettua setup dei connection strings da web.config delal singola applicazione
/// </summary>
protected virtual void setupConnectionStringBase()
{
string connString = memLayer.ML.confReadString("CTrackConnectionString");
// connections strings del db
taAnArt.Connection.ConnectionString = connString;
taAF.Connection.ConnectionString = connString;
taAO.Connection.ConnectionString = connString;
taAP.Connection.ConnectionString = connString;
taAT.Connection.ConnectionString = connString;
taO2P.Connection.ConnectionString = connString;
taPODL.Connection.ConnectionString = connString;
taTL.Connection.ConnectionString = connString;
taTL2Post.Connection.ConnectionString = connString;
taTR.Connection.ConnectionString = connString;
taTRA.Connection.ConnectionString = connString;
taTE2S.Connection.ConnectionString = connString;
taAKV.Connection.ConnectionString = connString;
}
#endregion Protected Methods
}
/// <summary>
/// avvia table adapters
/// </summary>
private void avvioTA()
{
// avvio i table adapters...
taAnArt = new DS_AppTableAdapters.AnagArticoliTableAdapter();
taAF = new DS_AppTableAdapters.AnagFasiTableAdapter();
taAO = new DS_AppTableAdapters.AnagOprTableAdapter();
taAP = new DS_AppTableAdapters.AnagPostTableAdapter();
taAT = new DS_AppTableAdapters.AnagTagTableAdapter();
taO2P = new DS_AppTableAdapters.Opr2PostTableAdapter();
taPODL = new DS_AppTableAdapters.PODLTableAdapter();
taTL = new DS_AppTableAdapters.TaskListTableAdapter();
taTL2Post = new DS_AppTableAdapters.TaskList2PostTableAdapter();
taTR = new DS_AppTableAdapters.TaskRecTableAdapter();
taTE2S = new DS_AppTableAdapters.TraEv2StatiTableAdapter();
taAKV = new DS_UtilityTableAdapters.AnagKeyValueTableAdapter();
}
/// <summary>
/// effettua setup dei connection strings da web.config delal singola applicazione
/// </summary>
protected virtual void setupConnectionStringBase()
{
string connString = memLayer.ML.confReadString("CTrackConnectionString");
// connections strings del db
taAnArt.Connection.ConnectionString = connString;
taAF.Connection.ConnectionString = connString;
taAO.Connection.ConnectionString = connString;
taAP.Connection.ConnectionString = connString;
taAT.Connection.ConnectionString = connString;
taO2P.Connection.ConnectionString = connString;
taPODL.Connection.ConnectionString = connString;
taTL.Connection.ConnectionString = connString;
taTL2Post.Connection.ConnectionString = connString;
taTR.Connection.ConnectionString = connString;
taTE2S.Connection.ConnectionString = connString;
taAKV.Connection.ConnectionString = connString;
}
/// <summary>
/// Elenco ARTICOLI
/// </summary>
public DS_AppTableAdapters.AnagArticoliTableAdapter taAnArt;
/// <summary>
/// Elenco POSTAZIONI
/// </summary>
public DS_AppTableAdapters.AnagFasiTableAdapter taAF;
/// <summary>
/// Elenco OPERATORI
/// </summary>
public DS_AppTableAdapters.AnagOprTableAdapter taAO;
/// <summary>
/// Elenco POSTAZIONI
/// </summary>
public DS_AppTableAdapters.AnagPostTableAdapter taAP;
/// <summary>
/// Elenco TAG
/// </summary>
public DS_AppTableAdapters.AnagTagTableAdapter taAT;
/// <summary>
/// Elenco PROMESSE ODL
/// </summary>
public DS_AppTableAdapters.Opr2PostTableAdapter taO2P;
/// <summary>
/// Elenco PROMESSE ODL
/// </summary>
public DS_AppTableAdapters.PODLTableAdapter taPODL;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_AppTableAdapters.TaskListTableAdapter taTL;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_AppTableAdapters.TaskList2PostTableAdapter taTL2Post;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_AppTableAdapters.TaskRecTableAdapter taTR;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_AppTableAdapters.TraEv2StatiTableAdapter taTE2S;
/// <summary>
/// Elenco TASK
/// </summary>
public DS_UtilityTableAdapters.AnagKeyValueTableAdapter taAKV;
/// <summary>
/// singleton classe
/// </summary>
public static dataLayer man = new dataLayer();
}
}
}
+118 -82
View File
@@ -4,84 +4,116 @@ namespace AppData
{
public class mUtils
{
#region Public Fields
#region definizione Regexp
/// <summary>
/// RegExp x Cod ARTICOLO
/// Array di regole di sostituzione per valori Time
/// </summary>
public static string reCodArt = memLayer.ML.cdv("regExp_CodArt");
public static string[] lRepCleanTime = memLayer.ML.CRS("confAddTaskCleanTime").Split('#');
/// <summary>
/// RegExp x Cod OPERATORE
/// OPZIONE: indica che è da eseguire il preprocessing
/// </summary>
public static string reCodOper = memLayer.ML.cdv("regExp_CodOper");
/// <summary>
/// RegExp x Cod POSTAZIONE
/// </summary>
public static string reCodPost = memLayer.ML.cdv("regExp_CodPost");
/// <summary>
/// RegExp x Cod COMMESSA (NumTask)
/// </summary>
public static string reNumTask = memLayer.ML.cdv("regExp_NumTask");
/// <summary>
/// RegExp x QTA
/// </summary>
public static string reQta = memLayer.ML.cdv("regExp_QtaRic");
/// <summary>
/// RegExp x RESET / CANCEL
/// </summary>
public static string reReset = memLayer.ML.cdv("regExp_KO");
/// <summary>
/// RegExp x CONFERMA ADD
/// </summary>
public static string reAddNew = memLayer.ML.cdv("regExp_AddNew");
/// <summary>
/// RegExp x CONFERMA DELETE
/// </summary>
public static string reDelete = memLayer.ML.cdv("regExp_DEL");
/// <summary>
/// Comando x RESET OPERATORE
/// </summary>
public static string reCmdResetOper = memLayer.ML.cdv("regExp_CmdResetOper");
/// <summary>
/// Comando x RESET COMMESSA (NumTask)
/// </summary>
public static string reCmdResetNumTask = memLayer.ML.cdv("regExp_CmdResetNumTask");
/// <summary>
/// Comando x PAUSA (es COMMESSA/NumTask)
/// </summary>
public static string reCmdPause = memLayer.ML.cdv("regExp_CmdPause");
/// <summary>
/// Comando x CHIUSURA COMMESSA (NumTask)
/// </summary>
public static string reCmdClose = memLayer.ML.cdv("regExp_CmdClose");
public static bool OptBCodePrepDo = memLayer.ML.CRB("OptBCodePrepDo");
/// <summary>
/// OPZIONE: indica che è abilitato BCode
/// </summary>
public static bool OptUseBCode = memLayer.ML.CRB("OptUseBCode");
/// <summary>
/// OPZIONE: indica che è abilitata selezione TASK/COMMESSA
/// </summary>
public static bool OptUseSelTask = memLayer.ML.CRB("OptUseSelTask");
/// <summary>
/// OPZIONE: indica che è abilitata selezione TAG
/// </summary>
public static bool OptUseSelTag = memLayer.ML.CRB("OptUseSelTag");
/// <summary>
/// OPZIONE: indica che è da eseguire il preprocessing
/// OPZIONE: indica che è abilitata selezione TASK/COMMESSA
/// </summary>
public static bool OptBCodePrepDo = memLayer.ML.CRB("OptBCodePrepDo");
public static bool OptUseSelTask = memLayer.ML.CRB("OptUseSelTask");
/// <summary>
/// RegExp x CONFERMA ADD
/// </summary>
public static string reAddNew = memLayer.ML.cdv("regExp_AddNew");
/// <summary>
/// Comando x CHIUSURA COMMESSA (NumTask)
/// </summary>
public static string reCmdClose = memLayer.ML.cdv("regExp_CmdClose");
/// <summary>
/// Comando x PAUSA (es COMMESSA/NumTask)
/// </summary>
public static string reCmdPause = memLayer.ML.cdv("regExp_CmdPause");
/// <summary>
/// Comando x RESET COMMESSA (NumTask)
/// </summary>
public static string reCmdResetNumTask = memLayer.ML.cdv("regExp_CmdResetNumTask");
/// <summary>
/// Comando x RESET OPERATORE
/// </summary>
public static string reCmdResetOper = memLayer.ML.cdv("regExp_CmdResetOper");
/// <summary>
/// RegExp x Cod ARTICOLO
/// </summary>
public static string reCodArt = memLayer.ML.cdv("regExp_CodArt");
/// <summary>
/// RegExp x Cod OPERATORE
/// </summary>
public static string reCodOper = memLayer.ML.cdv("regExp_CodOper");
/// <summary>
/// RegExp x Cod POSTAZIONE
/// </summary>
public static string reCodPost = memLayer.ML.cdv("regExp_CodPost");
/// <summary>
/// RegExp x CONFERMA DELETE
/// </summary>
public static string reDelete = memLayer.ML.cdv("regExp_DEL");
/// <summary>
/// RegExp x Cod COMMESSA (NumTask)
/// </summary>
public static string reNumTask = memLayer.ML.cdv("regExp_NumTask");
/// <summary>
/// RegExp x Cod dati raw x preprocessare
/// </summary>
public static string rePreproc = memLayer.ML.cdv("regExp_Preproc");
/// <summary>
/// RegExp x Cod dati da TENERE post preprocessing
/// </summary>
public static string rePreprocKeep = memLayer.ML.cdv("regExp_PreprocKeep");
#endregion
/// <summary>
/// RegExp x QTA
/// </summary>
public static string reQta = memLayer.ML.cdv("regExp_QtaRic");
/// <summary>
/// RegExp x RESET / CANCEL
/// </summary>
public static string reReset = memLayer.ML.cdv("regExp_KO");
/// <summary>
/// RegExp x TempoPrevisto
/// </summary>
public static string reTempoPrev = memLayer.ML.cdv("regExp_TimePrev");
/// <summary>
/// Fattore conversione tempo stimato letto da BCode (def 1 = NO conversione, 10=da dividere per 10)
/// </summary>
public static int TimeEstFactor = memLayer.ML.cdvi("confAddTaskTimeFactor");
#endregion Public Fields
#region Public Properties
/// <summary>
/// Codice Operatore
@@ -96,7 +128,7 @@ namespace AppData
if (answ == "")
{
answ = memLayer.ML.getCookieVal("CTrack_CodOpr");
// se non vuoto salvo...
// se non vuoto salvo...
memLayer.ML.setSessionVal("CodOpr", answ);
}
return answ;
@@ -108,6 +140,7 @@ namespace AppData
memLayer.ML.emptySessionVal("NomeOpr");
}
}
/// <summary>
/// Codice postazione di lavoro
/// </summary>
@@ -120,7 +153,7 @@ namespace AppData
if (string.IsNullOrEmpty(answ))
{
answ = memLayer.ML.getCookieVal("CTrack_CodPost");
// se non vuoto salvo...
// se non vuoto salvo...
memLayer.ML.setSessionVal("CodPost", answ);
}
return answ;
@@ -132,33 +165,6 @@ namespace AppData
memLayer.ML.emptySessionVal("DescPost");
}
}
/// <summary>
/// Restituisce boolean se post corrente sia multi operatore
/// </summary>
public static bool postIsMulti
{
get
{
bool answ = false;
if (memLayer.ML.isInSessionObject("postIsMulti"))
{
answ = memLayer.ML.BoolSessionObj("postIsMulti");
}
else
{
string rawAnsw = memLayer.ML.getCookieVal("CTrack_postIsMulti");
bool.TryParse(rawAnsw, out answ);
// se non vuoto salvo...
memLayer.ML.setSessionVal("postIsMulti", answ);
}
return answ;
}
set
{
memLayer.ML.setSessionVal("postIsMulti", value);
memLayer.ML.setCookieVal("CTrack_postIsMulti", value.ToString());
}
}
/// <summary>
/// oggetto valore opzionale letto 8e scorporato da barcode), es TAG in commessa + tag
@@ -183,5 +189,35 @@ namespace AppData
memLayer.ML.setSessionVal("optValueBC", value, false);
}
}
/// <summary>
/// Restituisce boolean se post corrente sia multi operatore
/// </summary>
public static bool postIsMulti
{
get
{
bool answ = false;
if (memLayer.ML.isInSessionObject("postIsMulti"))
{
answ = memLayer.ML.BoolSessionObj("postIsMulti");
}
else
{
string rawAnsw = memLayer.ML.getCookieVal("CTrack_postIsMulti");
bool.TryParse(rawAnsw, out answ);
// se non vuoto salvo...
memLayer.ML.setSessionVal("postIsMulti", answ);
}
return answ;
}
set
{
memLayer.ML.setSessionVal("postIsMulti", value);
memLayer.ML.setCookieVal("CTrack_postIsMulti", value.ToString());
}
}
#endregion Public Properties
}
}
}
+90
View File
@@ -0,0 +1,90 @@
using Newtonsoft.Json;
using SteamWare;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace C_TRACK
{
public class BaseUserControl : System.Web.UI.UserControl
{
#region Public Events
/// <summary>
/// Generico evento di richiesta refresh a aprent
/// </summary>
public event EventHandler eh_doRefresh;
/// <summary>
/// Generico evento di richiesta refresh a aprent
/// </summary>
public event EventHandler eh_doReset;
#endregion Public Events
#region Protected Properties
/// <summary>
/// Codice operatore salvato in cookie
/// </summary>
protected string cookieCodOpr
{
get
{
return memLayer.ML.getCookieVal("CTrack_CodOpr");
}
}
/// <summary>
/// Codice post salvato in cookie
/// </summary>
protected string cookieCodPost
{
get
{
return memLayer.ML.getCookieVal("CTrack_CodPost");
}
}
#endregion Protected Properties
#region Public Methods
/// <summary>
/// Chiamata evento
/// </summary>
public void raiseEvent()
{
// se qualcuno ascolta sollevo evento nuovo valore...
if (eh_doRefresh != null)
{
eh_doRefresh(this, new EventArgs());
}
}
/// <summary>
/// Chiamata evento
/// </summary>
public void raiseReset()
{
// se qualcuno ascolta sollevo evento nuovo valore...
if (eh_doReset != null)
{
eh_doReset(this, new EventArgs());
}
}
/// <summary>
/// Wrapper traduzione termini
/// </summary>
/// <param name="lemma"></param>
/// <returns></returns>
public string traduci(string lemma)
{
return SteamWare.user_std.UtSn.Traduci(lemma);
}
#endregion Public Methods
}
}
+3
View File
@@ -551,6 +551,9 @@
<Compile Include="barcode.aspx.designer.cs">
<DependentUpon>barcode.aspx</DependentUpon>
</Compile>
<Compile Include="BaseUserControl.cs">
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="closeAllRec.aspx.cs">
<DependentUpon>closeAllRec.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
+152 -151
View File
@@ -4,69 +4,72 @@
https://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<configSections>
<sectionGroup name="elmah">
<section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
<section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
<section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
<section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
</sectionGroup>
</configSections>
<system.web>
<compilation debug="true" targetFramework="4.6.2" />
<httpRuntime targetFramework="4.6.2" />
<pages>
<namespaces>
<add namespace="System.Web.Optimization" />
</namespaces>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt" />
<add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" /></controls>
</pages>
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
<sessionState timeout="600" mode="Custom" customProvider="MySessionStateStore">
<providers>
<add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="localhost" accessKey="localhost" ssl="false" applicationName="C.TRACK" databaseId="2" />
</providers>
</sessionState>
<customErrors mode="RemoteOnly" defaultRedirect="error.html" />
</system.web>
<!--<system.web.extensions>
<configSections>
<sectionGroup name="elmah">
<section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
<section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
<section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
<section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
</sectionGroup>
</configSections>
<system.web>
<compilation debug="true" targetFramework="4.6.2" />
<httpRuntime targetFramework="4.6.2" />
<pages>
<namespaces>
<add namespace="System.Web.Optimization" />
</namespaces>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt" />
<add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" />
</controls>
</pages>
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
<sessionState timeout="600" mode="Custom" customProvider="MySessionStateStore">
<providers>
<add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="localhost" accessKey="localhost" ssl="false" applicationName="C.TRACK" databaseId="2" />
</providers>
</sessionState>
<customErrors mode="RemoteOnly" defaultRedirect="error.html" />
</system.web>
<!--<system.web.extensions>
<scripting>
<scriptResourceHandler enableCompression="true" enableCaching="true" />
</scripting>
</system.web.extensions>-->
<appSettings>
<add key="CodModulo" value="C.TRACK" />
<add key="cacheOnRedis" value="true" />
<add key="maxAgeAppConf_min" value="15" />
<add key="_logDir" value="~/logs/" />
<add key="logMitigSec" value="1" />
<!--Conf generale-->
<add key="appVers" value="stable" />
<add key="downloadPath" value="c:\Steamware\installers\CTRACK\" />
<!--Redis conn-->
<add key="RedisConn" value="localhost,abortConnect=false,ssl=false" />
<add key="RedisConnAdmin" value="localhost,abortConnect=false,ssl=false" />
<add key="redisDb" value="2" />
<add key="_safePages" value="chLang#jumper#unauthorized#forceUser#login#test#UserAdmin#UpdMan#about#contact" />
<!--area DB-->
<add key="CTrackConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="DbConfConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="DevicesAuthConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="PermessiConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="UtenteCdcConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="VocabolarioConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
</appSettings>
<connectionStrings>
<add name="AppData.Properties.Settings.C_TRACKConnectionString" connectionString="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User ID=sa;Password=keyhammer16;" providerName="System.Data.SqlClient" />
</connectionStrings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<appSettings>
<add key="CodModulo" value="C.TRACK" />
<add key="cacheOnRedis" value="true" />
<add key="maxAgeAppConf_min" value="15" />
<add key="_logDir" value="~/logs/" />
<add key="logMitigSec" value="1" />
<!--Conf generale-->
<add key="appVers" value="stable" />
<add key="downloadPath" value="c:\Steamware\installers\CTRACK\" />
<!--Redis conn-->
<add key="RedisConn" value="localhost,abortConnect=false,ssl=false" />
<add key="RedisConnAdmin" value="localhost,abortConnect=false,ssl=false" />
<add key="redisDb" value="2" />
<add key="_safePages" value="chLang#jumper#unauthorized#forceUser#login#test#UserAdmin#UpdMan#about#contact" />
<!--area DB-->
<add key="CTrackConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="DbConfConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="DevicesAuthConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="PermessiConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="UtenteCdcConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
<add key="VocabolarioConnectionString" value="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User id=sa;Password=keyhammer16;" />
</appSettings>
<connectionStrings>
<add name="AppData.Properties.Settings.C_TRACKConnectionString" connectionString="Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User ID=sa;Password=keyhammer16;" providerName="System.Data.SqlClient" />
<add name="ErrorLog" connectionString="Data Source=SQL2016DEV;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;"
providerName="System.Data.SqlClient" />
</connectionStrings>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Xml.XPath.XDocument" publicKeyToken="B03F5F7F11D50A3A" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.0.0" newVersion="4.1.0.0" />
@@ -279,101 +282,99 @@
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="B03F5F7F11D50A3A" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" />
<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" />
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Diagnostics.DiagnosticSource" publicKeyToken="cc7b13ffcd2ddd51" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.1" newVersion="4.0.2.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Channels" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="SharpCompress" publicKeyToken="afb0a02973931d96" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-0.24.0.0" newVersion="0.24.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<modules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
<remove name="Session" />
<add name="Session" type="Microsoft.AspNet.SessionState.SessionStateModuleAsync, Microsoft.AspNet.SessionState.SessionStateModule, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode" />
</modules>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers></system.webServer>
<elmah>
<!--
See http://code.google.com/p/elmah/wiki/SecuringErrorLogPages for
more information on remote access and securing ELMAH.
-->
<security allowRemoteAccess="false" />
</elmah>
<location path="elmah.axd" inheritInChildApplications="false">
<system.web>
<httpHandlers>
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>
<!--
See http://code.google.com/p/elmah/wiki/SecuringErrorLogPages for
<dependentAssembly>
<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" />
<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" />
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Diagnostics.DiagnosticSource" publicKeyToken="cc7b13ffcd2ddd51" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.1" newVersion="4.0.2.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Channels" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="SharpCompress" publicKeyToken="afb0a02973931d96" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-0.24.0.0" newVersion="0.24.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<modules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
<remove name="Session" />
<add name="Session" type="Microsoft.AspNet.SessionState.SessionStateModuleAsync, Microsoft.AspNet.SessionState.SessionStateModule, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="integratedMode" />
</modules>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
</system.webServer>
<elmah>
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="ErrorLog" />
<security allowRemoteAccess="false" />
</elmah>
<location path="elmah.axd" inheritInChildApplications="false">
<system.web>
<httpHandlers>
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>
<!--
See http://code.google.com/p/elmah/wiki/SecuringErrorLogPages for
more information on using ASP.NET authorization securing ELMAH.
<authorization>
<allow roles="admin" />
<deny users="*" />
<deny users="*" />
</authorization>
-->
</system.web>
<system.webServer>
<handlers>
<add name="ELMAH" verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />
</handlers>
</system.webServer>
</location>
</configuration>
</system.web>
<system.webServer>
<handlers>
<add name="ELMAH" verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />
</handlers>
</system.webServer>
</location>
</configuration>
+27 -18
View File
@@ -1,20 +1,29 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="mod_addTask.ascx.cs" Inherits="C_TRACK.WebUserControls.mod_addTask" %>
<div runat="server" id="divAddNew">
<div class="row font-weight-bold py-2">
<div class="col-3 text-center" runat="server" id="divArticolo">
<asp:Label runat="server" ID="lblCodArt" CssClass="text-secondary">Cod.ARTICOLO</asp:Label>
<div><%: CodArticolo %></div>
<%@ Register Src="~/WebUserControls/mod_periodo.ascx" TagPrefix="uc1" TagName="mod_periodo" %>
<div runat="server" id="divAddNew">
<div class="row font-weight-bold py-2">
<div class="col text-center" runat="server" id="divExport">
<asp:HyperLink runat="server" ID="hlExport" CssClass="btn btn-warning btn-block" NavigateUrl="~/export.aspx" Target="_blank"><i class="fas fa-download"></i> Data Export</asp:HyperLink>
</div>
<div class="col text-center" runat="server" id="divArticolo">
<asp:Label runat="server" ID="lblCodArt" CssClass="text-secondary">Cod.ARTICOLO</asp:Label>
<div><%: CodArticolo %></div>
</div>
<div class="col text-center" runat="server" id="divCommessa">
<asp:Label runat="server" ID="lblNumTask" CssClass="text-secondary">COMMESSA</asp:Label>
<div><%: NumTask %></div>
</div>
<div class="col text-center" runat="server" id="divQta">
<asp:Label runat="server" ID="lblQta" CssClass="text-secondary">QUANTITA</asp:Label>
<div><%: Quantita %></div>
</div>
<div class="col text-center" runat="server" id="divTime">
<asp:Label runat="server" ID="Label1" CssClass="text-secondary">TEMPO <sub>prev</sub></asp:Label>
<div><%: TimeEst %></div>
</div>
<div class="col text-center" runat="server" id="divReset">
<asp:LinkButton runat="server" ID="lbtReset" CssClass="btn btn-info btn-block" OnClick="lbtReset_Click"><i class="fas fa-sync-alt"></i> RESET</asp:LinkButton>
</div>
</div>
<div class="col-3 text-center" runat="server" id="divCommessa">
<asp:Label runat="server" ID="lblNumTask" CssClass="text-secondary">COMMESSA</asp:Label>
<div><%: NumTask %></div>
</div>
<div class="col-3 text-center" runat="server" id="divQta">
<asp:Label runat="server" ID="lblQta" CssClass="text-secondary">QUANTITA</asp:Label>
<div><%: Quantita %></div>
</div>
<div class="col-3 text-center" runat="server" id="divReset">
<asp:LinkButton runat="server" ID="lbtReset" CssClass="btn btn-info btn-block" OnClick="lbtReset_Click"><i class="fas fa-sync-alt"></i> RESET</asp:LinkButton>
</div>
</div>
</div>
</div>
+230 -157
View File
@@ -1,182 +1,255 @@
using AppData;
using SteamWare;
using System;
using System.Linq;
using System.Text.RegularExpressions;
namespace C_TRACK.WebUserControls
{
public partial class mod_addTask : System.Web.UI.UserControl
{
/// <summary>
/// evento aggiunta record
/// </summary>
public event EventHandler eh_created;
protected void Page_Load(object sender, EventArgs e)
public partial class mod_addTask : System.Web.UI.UserControl
{
if (!Page.IsPostBack)
{
CodArticolo = "";
NumTask = "";
Quantita = 0;
}
checkValori();
}
#region Public Events
private void checkValori()
{
// verifica quali valori siano disponibili e di conseguenza visualizza COLORE...
divArticolo.Attributes.Remove("class");
divCommessa.Attributes.Remove("class");
divQta.Attributes.Remove("class");
divArticolo.Attributes.Add("class", CodArticolo != "" ? "col-3 text-center table-success text-success" : "col-3 text-center text-secondary");
divCommessa.Attributes.Add("class", NumTask != "" ? "col-3 text-center table-success text-success" : "col-3 text-center text-secondary");
divQta.Attributes.Add("class", Quantita > 0 ? "col-3 text-center table-success text-success" : "col-3 text-center text-secondary");
}
/// <summary>
/// Input da processare...
/// </summary>
public string newInput
{
set
{
processInput(value);
}
}
/// <summary>
/// Effettua riconoscimento input e determina valori commessa / articolo / qta
/// </summary>
/// <param name="value"></param>
private void processInput(string value)
{
// verifico se sia un articolo...
Match testReset = Regex.Match(value, mUtils.reReset);
Match testDelete = Regex.Match(value, mUtils.reDelete);
Match testAddNew = Regex.Match(value, mUtils.reAddNew);
Match testCodArt = Regex.Match(value, mUtils.reCodArt);
Match testNumTask = Regex.Match(value, mUtils.reNumTask);
Match testQta = Regex.Match(value, mUtils.reQta);
/// <summary>
/// evento aggiunta record
/// </summary>
public event EventHandler eh_created;
#endregion Public Events
if (testReset.Success)
{
CodArticolo = "";
NumTask = "";
Quantita = 0;
}
else if (testDelete.Success)
{
// creo...
dataLayer.man.taTL.deleteQuery(NumTask);
// resetto!
CodArticolo = "";
NumTask = "";
Quantita = 0;
// invoco update...
if (eh_created != null)
#region Public Properties
/// <summary>
/// Cod ARTICOLO corrente
/// </summary>
public string CodArticolo
{
eh_created(this, new EventArgs());
get
{
return memLayer.ML.StringSessionObj("currCodArt");
}
set
{
memLayer.ML.setSessionVal("currCodArt", value);
}
}
}
else if (testAddNew.Success)
{
// se qta > 0 ed ho articolo e commessa...
if (Quantita > 0 && CodArticolo != "" && NumTask != "")
/// <summary>
/// Input da processare...
/// </summary>
public string newInput
{
// creo...
dataLayer.man.taTL.insertQuery(NumTask, CodArticolo, Quantita);
// resetto!
CodArticolo = "";
NumTask = "";
Quantita = 0;
// invoco update...
if (eh_created != null)
{
eh_created(this, new EventArgs());
}
set
{
processInput(value);
}
}
}
else if (testCodArt.Success)
{
CodArticolo = value;
}
else if (testNumTask.Success)
{
NumTask = value;
}
else if (testQta.Success)
{
int qta = 0;
int.TryParse(value, out qta);
Quantita = qta;
}
// non match con RegExp --> ricerca ESPLICITA, se abilitato ricerca estesa
if (memLayer.ML.CRB("OptEnableMapoIn") && !(testCodArt.Success || testNumTask.Success))
{
var tabArt = dataLayer.man.taAnArt.getByKey(value);
if (tabArt.Rows.Count > 0)
/// <summary>
/// Cod COMMESSA corrente
/// </summary>
public string NumTask
{
CodArticolo = value;
get
{
return memLayer.ML.StringSessionObj("currNumTask");
}
set
{
memLayer.ML.setSessionVal("currNumTask", value);
}
}
else
/// <summary>
/// QTA da produrre
/// </summary>
public int Quantita
{
var tabTask = dataLayer.man.taTL.getByKey(value);
if (tabTask.Rows.Count > 0)
{
NumTask = value;
}
get
{
return memLayer.ML.IntSessionObj("currQta");
}
set
{
memLayer.ML.setSessionVal("currQta", value);
}
}
}
checkValori();
}
/// <summary>
/// Tempo stimato x produzione
/// </summary>
public float TimeEst
{
get
{
float answ = -1;
string rawVal = memLayer.ML.StringSessionObj("currTimeEst");
float.TryParse(rawVal, out answ);
return answ;
}
set
{
memLayer.ML.setSessionVal("currTimeEst", value);
}
}
/// <summary>
/// Cod ARTICOLO corrente
/// </summary>
public string CodArticolo
{
get
{
return memLayer.ML.StringSessionObj("currCodArt");
}
set
{
memLayer.ML.setSessionVal("currCodArt", value);
}
}
/// <summary>
/// Cod COMMESSA corrente
/// </summary>
public string NumTask
{
get
{
return memLayer.ML.StringSessionObj("currNumTask");
}
set
{
memLayer.ML.setSessionVal("currNumTask", value);
}
}
/// <summary>
/// QTA da produrre
/// </summary>
public int Quantita
{
get
{
return memLayer.ML.IntSessionObj("currQta");
}
set
{
memLayer.ML.setSessionVal("currQta", value);
}
}
#endregion Public Properties
protected void lbtReset_Click(object sender, EventArgs e)
{
processInput(memLayer.ML.CRS("regExp_KO"));
#region Private Methods
private void checkValori()
{
// verifica quali valori siano disponibili e di conseguenza visualizza COLORE...
divArticolo.Attributes.Remove("class");
divCommessa.Attributes.Remove("class");
divQta.Attributes.Remove("class");
divTime.Attributes.Remove("class");
divArticolo.Attributes.Add("class", CodArticolo != "" ? "col text-center table-success text-success" : "col text-center text-secondary");
divCommessa.Attributes.Add("class", NumTask != "" ? "col text-center table-success text-success" : "col text-center text-secondary");
divQta.Attributes.Add("class", Quantita > 0 ? "col text-center table-success text-success" : "col text-center text-secondary");
divTime.Attributes.Add("class", TimeEst > 0 ? "col text-center table-success text-success" : "col text-center text-secondary");
}
/// <summary>
/// Effettua riconoscimento input e determina valori commessa / articolo / qta
/// </summary>
/// <param name="value"></param>
private void processInput(string value)
{
// verifico se sia un articolo...
Match testReset = Regex.Match(value, mUtils.reReset);
Match testDelete = Regex.Match(value, mUtils.reDelete);
Match testAddNew = Regex.Match(value, mUtils.reAddNew);
Match testCodArt = Regex.Match(value, mUtils.reCodArt);
Match testNumTask = Regex.Match(value, mUtils.reNumTask);
Match testQta = Regex.Match(value, mUtils.reQta);
Match testTempo = Regex.Match(value, mUtils.reTempoPrev);
if (testReset.Success)
{
CodArticolo = "";
NumTask = "";
Quantita = 0;
TimeEst = 0;
}
else if (testDelete.Success)
{
// creo...
dataLayer.man.taTL.deleteQuery(NumTask);
// resetto!
CodArticolo = "";
NumTask = "";
Quantita = 0;
// invoco update...
if (eh_created != null)
{
eh_created(this, new EventArgs());
}
}
else if (testAddNew.Success)
{
// controllo condizione richiesta tempo x setup Task
bool confAddTaskReqTime = memLayer.ML.CRB("confAddTaskReqTime");
// se NON richiesto --> Time=0
if (!confAddTaskReqTime)
{
TimeEst = 0;
}
// se qta > 0 ed ho articolo e commessa...
if (Quantita > 0 && !string.IsNullOrEmpty(CodArticolo) && !string.IsNullOrEmpty(NumTask) && (!confAddTaskReqTime || TimeEst > 0))
{
// creo...
dataLayer.man.taTL.insertQuery(NumTask, CodArticolo, Quantita, TimeEst);
// resetto!
CodArticolo = "";
NumTask = "";
Quantita = 0;
// invoco update...
if (eh_created != null)
{
eh_created(this, new EventArgs());
}
}
}
else if (testTempo.Success)
{
string newVal = value;
// effettuo pulizia variabile da conf...
foreach (var item in mUtils.lRepCleanTime)
{
string[] repVal = item.Split('|');
if (repVal.Length > 1)
{
newVal = newVal.Replace(repVal[0], repVal[1]);
}
}
float tPrev = 0;
float.TryParse(newVal, out tPrev);
// se configurata conversione procedo
if (mUtils.TimeEstFactor != 1)
{
tPrev = tPrev / mUtils.TimeEstFactor;
}
// assegno!
TimeEst = tPrev;
}
else if (testCodArt.Success)
{
CodArticolo = value;
}
else if (testNumTask.Success)
{
NumTask = value;
}
else if (testQta.Success)
{
int qta = 0;
int.TryParse(value, out qta);
Quantita = qta;
}
// non match con RegExp --> ricerca ESPLICITA, se abilitato ricerca estesa
if (memLayer.ML.CRB("OptEnableMapoIn") && !(testCodArt.Success || testNumTask.Success))
{
var tabArt = dataLayer.man.taAnArt.getByKey(value);
if (tabArt.Rows.Count > 0)
{
CodArticolo = value;
}
else
{
var tabTask = dataLayer.man.taTL.getByKey(value);
if (tabTask.Rows.Count > 0)
{
NumTask = value;
}
}
}
checkValori();
}
#endregion Private Methods
#region Protected Methods
protected void lbtReset_Click(object sender, EventArgs e)
{
processInput(memLayer.ML.CRS("regExp_KO"));
}
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
CodArticolo = "";
NumTask = "";
Quantita = 0;
}
checkValori();
}
#endregion Protected Methods
}
}
}
+51 -13
View File
@@ -7,11 +7,13 @@
// </generato automaticamente>
//------------------------------------------------------------------------------
namespace C_TRACK.WebUserControls {
public partial class mod_addTask {
namespace C_TRACK.WebUserControls
{
public partial class mod_addTask
{
/// <summary>
/// Controllo divAddNew.
/// </summary>
@@ -20,7 +22,25 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divAddNew;
/// <summary>
/// Controllo divExport.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divExport;
/// <summary>
/// Controllo hlExport.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.HyperLink hlExport;
/// <summary>
/// Controllo divArticolo.
/// </summary>
@@ -29,7 +49,7 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divArticolo;
/// <summary>
/// Controllo lblCodArt.
/// </summary>
@@ -38,7 +58,7 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblCodArt;
/// <summary>
/// Controllo divCommessa.
/// </summary>
@@ -47,7 +67,7 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divCommessa;
/// <summary>
/// Controllo lblNumTask.
/// </summary>
@@ -56,7 +76,7 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumTask;
/// <summary>
/// Controllo divQta.
/// </summary>
@@ -65,7 +85,7 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divQta;
/// <summary>
/// Controllo lblQta.
/// </summary>
@@ -74,7 +94,25 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblQta;
/// <summary>
/// Controllo divTime.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divTime;
/// <summary>
/// Controllo Label1.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// Controllo divReset.
/// </summary>
@@ -83,7 +121,7 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divReset;
/// <summary>
/// Controllo lbtReset.
/// </summary>
+7 -15
View File
@@ -1,18 +1,10 @@
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="mod_periodo.ascx.cs" Inherits="C_TRACK.WebUserControls.mod_periodo" %>
<div class="row">
<div class="col">
<asp:TextBox runat="server" ID="txtFrom" CssClass="form-control" TextMode="Date" AutoPostBack="True" OnTextChanged="txtFrom_TextChanged"></asp:TextBox>
</div>
<div class="col"></div>
<div class="col">
<asp:TextBox runat="server" ID="txtTo" CssClass="form-control" TextMode="Date" AutoPostBack="True" OnTextChanged="txtTo_TextChanged"></asp:TextBox>
</div>
</div>
<div class="row">
<div class="col"></div>
<div class="col">
<asp:HyperLink runat="server" ID="hlExport" Target="_blank" CssClass="btn btn-success btn-block">EXPORT</asp:HyperLink>
</div>
<div class="col"></div>
</div>
<div class="col">
<asp:TextBox runat="server" ID="txtFrom" CssClass="form-control" TextMode="Date" AutoPostBack="True" OnTextChanged="txtFrom_TextChanged"></asp:TextBox>
</div>
<div class="col">
<asp:TextBox runat="server" ID="txtTo" CssClass="form-control" TextMode="Date" AutoPostBack="True" OnTextChanged="txtTo_TextChanged"></asp:TextBox>
</div>
</div>
+50 -48
View File
@@ -3,59 +3,61 @@ using System.Web.UI;
namespace C_TRACK.WebUserControls
{
public partial class mod_periodo : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
public partial class mod_periodo : BaseUserControl
{
if (!Page.IsPostBack)
{
dataFrom = DateTime.Today.AddMonths(-1);
dataTo = DateTime.Today.AddDays(1);
updateUrl();
}
}
#region Public Properties
protected DateTime dataFrom
{
get
{
DateTime answ = DateTime.Today;
DateTime.TryParse(txtFrom.Text.Trim(), out answ);
return answ;
}
set
{
txtFrom.Text = value.ToString("yyyy-MM-dd");
}
}
public DateTime dataFrom
{
get
{
DateTime answ = DateTime.Today;
DateTime.TryParse(txtFrom.Text.Trim(), out answ);
return answ;
}
set
{
txtFrom.Text = value.ToString("yyyy-MM-dd");
}
}
protected DateTime dataTo
{
get
{
DateTime answ = DateTime.Today;
DateTime.TryParse(txtTo.Text.Trim(), out answ);
return answ;
}
set
{
txtTo.Text = value.ToString("yyyy-MM-dd");
}
}
public DateTime dataTo
{
get
{
DateTime answ = DateTime.Today;
DateTime.TryParse(txtTo.Text.Trim(), out answ);
return answ;
}
set
{
txtTo.Text = value.ToString("yyyy-MM-dd");
}
}
protected void txtFrom_TextChanged(object sender, EventArgs e)
{
updateUrl();
}
#endregion Public Properties
protected void txtTo_TextChanged(object sender, EventArgs e)
{
updateUrl();
}
#region Protected Methods
private void updateUrl()
{
hlExport.NavigateUrl = string.Format("~/doExport?from={0:yyyy-MM-dd}&to={1:yyyy-MM-dd}", dataFrom, dataTo);
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
dataFrom = DateTime.Today.AddMonths(-1);
dataTo = DateTime.Today.AddDays(1);
}
}
protected void txtFrom_TextChanged(object sender, EventArgs e)
{
raiseEvent();
}
protected void txtTo_TextChanged(object sender, EventArgs e)
{
raiseEvent();
}
#endregion Protected Methods
}
}
}
+8 -15
View File
@@ -7,11 +7,13 @@
// </generato automaticamente>
//------------------------------------------------------------------------------
namespace C_TRACK.WebUserControls {
public partial class mod_periodo {
namespace C_TRACK.WebUserControls
{
public partial class mod_periodo
{
/// <summary>
/// Controllo txtFrom.
/// </summary>
@@ -20,7 +22,7 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtFrom;
/// <summary>
/// Controllo txtTo.
/// </summary>
@@ -29,14 +31,5 @@ namespace C_TRACK.WebUserControls {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtTo;
/// <summary>
/// Controllo hlExport.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.HyperLink hlExport;
}
}
+83 -82
View File
@@ -3,90 +3,91 @@
<%@ Register Src="~/WebUserControls/mod_fasiAttive.ascx" TagPrefix="uc1" TagName="mod_fasiAttive" %>
<div class="row text-uppercase mb-2">
<div class="col">
<asp:LinkButton runat="server" ID="lbCaricati" CssClass="btn btn-sm btn-success btn-block" OnClick="lbCaricati_Click" AccessKey="1">[1] Caricate</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbInCorso" CssClass="btn btn-sm btn-warning btn-block" OnClick="lbInCorso_Click" AccessKey="2">[2] In Corso</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbConclusi" CssClass="btn btn-sm btn-secondary btn-block" OnClick="lbConclusi_Click" AccessKey="3">[3] Concluse</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbTutti" CssClass="btn btn-sm btn-dark btn-block" OnClick="lbTutti_Click" AccessKey="0">[0] Tutte Comm</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbFasiAttive" CssClass="btn btn-sm btn-outline-primary btn-block" AccessKey="4" OnClick="lbFasiAttive_Click">[4] Fasi Attive</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbCaricati" CssClass="btn btn-sm btn-success btn-block" OnClick="lbCaricati_Click" AccessKey="1">[1] Caricate</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbInCorso" CssClass="btn btn-sm btn-warning btn-block" OnClick="lbInCorso_Click" AccessKey="2">[2] In Corso</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbConclusi" CssClass="btn btn-sm btn-secondary btn-block" OnClick="lbConclusi_Click" AccessKey="3">[3] Concluse</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbTutti" CssClass="btn btn-sm btn-dark btn-block" OnClick="lbTutti_Click" AccessKey="0">[0] Tutte Comm</asp:LinkButton>
</div>
<div class="col">
<asp:LinkButton runat="server" ID="lbFasiAttive" CssClass="btn btn-sm btn-outline-primary btn-block" AccessKey="4" OnClick="lbFasiAttive_Click">[4] Fasi Attive</asp:LinkButton>
</div>
</div>
<div class="row">
<div class="col-12">
<uc1:mod_fasiAttive runat="server" ID="mod_fasiAttive" Visible="false" />
<uc1:mod_taskRec runat="server" ID="mod_taskRec" tipoSelezione="byTask" />
<i>NB: tempi espressi in minuti.centesimi</i>
<asp:GridView ID="grView" runat="server" AutoGenerateColumns="False" DataKeyNames="NumTask" DataSourceID="ods" CssClass="table table-striped table-condensed table-sm small" AllowPaging="True" AllowSorting="True" OnSelectedIndexChanged="grView_SelectedIndexChanged">
<HeaderStyle CssClass="default" />
<PagerStyle CssClass="active GridPager" />
<PagerSettings Mode="NumericFirstLast" />
<SelectedRowStyle CssClass="table-info" />
<EmptyDataTemplate>
Nessun Risultato
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ItemStyle-Width="2em">
<HeaderTemplate>
<asp:LinkButton ID="lbtReset" runat="server" OnClick="lbtReset_Click" CssClass="btn btn-sm btn-primary" Visible="true"><i class="fas fa-sync-alt"></i></asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:LinkButton ID="lbSelect" runat="server" CausesValidation="False" CommandName="Select" CssClass="btn btn-sm btn-info"><i class="fas fa-search"></i></asp:LinkButton>
</ItemTemplate>
<div class="col-12">
<uc1:mod_fasiAttive runat="server" ID="mod_fasiAttive" Visible="false" />
<uc1:mod_taskRec runat="server" ID="mod_taskRec" tipoSelezione="byTask" />
<i>NB: tempi espressi in minuti.centesimi</i>
<asp:GridView ID="grView" runat="server" AutoGenerateColumns="False" DataKeyNames="NumTask" DataSourceID="ods" CssClass="table table-striped table-condensed table-sm small" AllowPaging="True" AllowSorting="True" OnSelectedIndexChanged="grView_SelectedIndexChanged">
<HeaderStyle CssClass="default" />
<PagerStyle CssClass="active GridPager" />
<PagerSettings Mode="NumericFirstLast" />
<SelectedRowStyle CssClass="table-info" />
<EmptyDataTemplate>
Nessun Risultato
</EmptyDataTemplate>
<Columns>
<asp:TemplateField ItemStyle-Width="2em">
<HeaderTemplate>
<asp:LinkButton ID="lbtReset" runat="server" OnClick="lbtReset_Click" CssClass="btn btn-sm btn-primary" Visible="true"><i class="fas fa-sync-alt"></i></asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<asp:LinkButton ID="lbSelect" runat="server" CausesValidation="False" CommandName="Select" CssClass="btn btn-sm btn-info"><i class="fas fa-search"></i></asp:LinkButton>
</ItemTemplate>
<ItemStyle Width="2em"></ItemStyle>
</asp:TemplateField>
<asp:BoundField DataField="NumTask" HeaderText="Commessa" ReadOnly="True" SortExpression="NumTask" />
<asp:BoundField DataField="CodGruppo" HeaderText="Gruppo" SortExpression="CodGruppo" />
<asp:BoundField DataField="CodArt" HeaderText="Articolo" SortExpression="CodArt" />
<asp:BoundField DataField="QtaRic" HeaderText="Qta Ord" SortExpression="QtaRic" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="QtaEv" HeaderText="Qta Ev" SortExpression="QtaEv" ItemStyle-HorizontalAlign="Center" ItemStyle-CssClass="text-success" />
<asp:BoundField DataField="MinTotWrk" HeaderText="Tot Lav." SortExpression="MinTotWrk" DataFormatString="{0:N3}" />
<asp:BoundField DataField="TCMedio" HeaderText="T.Ciclo" SortExpression="TCMedio" DataFormatString="{0:N2}"/>
<asp:BoundField DataField="MinTotFix" HeaderText="Tot Rip." SortExpression="MinTotFix" DataFormatString="{0:N3}"/>
<asp:BoundField DataField="DataIns" HeaderText="Inserita" SortExpression="DataIns" />
<asp:TemplateField HeaderText="St" SortExpression="CurrStatus" ItemStyle-Width="4em">
<ItemTemplate>
<div class="text-center">
<b>
<asp:Label ID="Label1" runat="server" Font-Size="1.3em" Text='<%# Eval("CurrStatus") %>' /></b><br />
<asp:Label ID="Label2" runat="server" Text='<%# tradStatus(Eval("CurrStatus")) %>' />
</div>
</ItemTemplate>
<ItemStyle Width="2em"></ItemStyle>
</asp:TemplateField>
<asp:BoundField DataField="NumTask" HeaderText="Commessa" ReadOnly="True" SortExpression="NumTask" />
<asp:BoundField DataField="CodGruppo" HeaderText="Gruppo" SortExpression="CodGruppo" />
<asp:BoundField DataField="CodArt" HeaderText="Articolo" SortExpression="CodArt" />
<asp:BoundField DataField="QtaRic" HeaderText="Qta Ord" SortExpression="QtaRic" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="QtaEv" HeaderText="Qta Ev" SortExpression="QtaEv" ItemStyle-HorizontalAlign="Center" ItemStyle-CssClass="text-success" />
<asp:BoundField DataField="MinTotWrk" HeaderText="Tot Lav." SortExpression="MinTotWrk" DataFormatString="{0:N3}" />
<asp:BoundField DataField="TCMedio" HeaderText="T.Ciclo" SortExpression="TCMedio" DataFormatString="{0:N2}" />
<asp:BoundField DataField="MinTotFix" HeaderText="Tot Rip." SortExpression="MinTotFix" DataFormatString="{0:N3}" />
<asp:BoundField DataField="TimeEst" HeaderText="T.Prev" SortExpression="TimeEst" DataFormatString="{0:N3}" />
<asp:BoundField DataField="DataIns" HeaderText="Inserita" SortExpression="DataIns" />
<asp:TemplateField HeaderText="St" SortExpression="CurrStatus" ItemStyle-Width="4em">
<ItemTemplate>
<div class="text-center">
<b>
<asp:Label ID="Label1" runat="server" Font-Size="1.3em" Text='<%# Eval("CurrStatus") %>' /></b><br />
<asp:Label ID="Label2" runat="server" Text='<%# tradStatus(Eval("CurrStatus")) %>' />
</div>
</ItemTemplate>
<ItemStyle Width="4em"></ItemStyle>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False" ItemStyle-Width="2em">
<ItemTemplate>
<div class="row">
<div class="col text-right">
<asp:LinkButton ID="lbDelete" runat="server" CausesValidation="False" CommandName="Delete" CssClass="btn btn-sm btn-danger" OnClientClick='<%# SteamWare.jsUtils.getCBE("confermaDel") %>' Visible='<%# Eval("NumRec").ToString()=="0" %>'><i class="fas fa-trash"></i></asp:LinkButton>
<asp:LinkButton ID="lbtReopen" runat="server" CausesValidation="False" CommandName="Select" CommandArgument="reopenTask" CssClass="btn btn-block btn-warning" Visible='<%# Convert.ToBoolean(Eval("Concluso")) %>' ToolTip="Riapertura Commessa" OnClick="lbtReopen_Click" OnClientClick='<%# SteamWare.jsUtils.getCBE("confermaReopenTask") %>'><i class="fas fa-angle-double-up"></i></asp:LinkButton>
</div>
</div>
</ItemTemplate>
<ItemStyle Width="4em"></ItemStyle>
</asp:TemplateField>
<asp:TemplateField ShowHeader="False" ItemStyle-Width="2em">
<ItemTemplate>
<div class="row">
<div class="col text-right">
<asp:LinkButton ID="lbDelete" runat="server" CausesValidation="False" CommandName="Delete" CssClass="btn btn-sm btn-danger" OnClientClick='<%# SteamWare.jsUtils.getCBE("confermaDel") %>' Visible='<%# Eval("NumRec").ToString()=="0" %>'><i class="fas fa-trash"></i></asp:LinkButton>
<asp:LinkButton ID="lbtReopen" runat="server" CausesValidation="False" CommandName="Select" CommandArgument="reopenTask" CssClass="btn btn-block btn-warning" Visible='<%# Convert.ToBoolean(Eval("Concluso")) %>' ToolTip="Riapertura Commessa" OnClick="lbtReopen_Click" OnClientClick='<%# SteamWare.jsUtils.getCBE("confermaReopenTask") %>'><i class="fas fa-angle-double-up"></i></asp:LinkButton>
</div>
</div>
</ItemTemplate>
<ItemStyle Width="2em"></ItemStyle>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:HiddenField runat="server" ID="hfCurrStatus" />
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="getByFilt" TypeName="AppData.DS_AppTableAdapters.TaskListTableAdapter" DeleteMethod="deleteQuery" OnDeleted="ods_Deleted">
<DeleteParameters>
<asp:Parameter Name="Original_NumTask" Type="String" />
</DeleteParameters>
<SelectParameters>
<asp:ControlParameter ControlID="hfCurrStatus" DefaultValue="0" Name="CurrStatus" PropertyName="Value" Type="Int32" />
<asp:SessionParameter Name="CodArt" SessionField="currCodArt" Type="String" />
<asp:SessionParameter Name="NumTask" SessionField="currNumTask" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
</div>
</div>
<ItemStyle Width="2em"></ItemStyle>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:HiddenField runat="server" ID="hfCurrStatus" />
<asp:ObjectDataSource ID="ods" runat="server" OldValuesParameterFormatString="original_{0}" SelectMethod="getByFilt" TypeName="AppData.DS_AppTableAdapters.TaskListTableAdapter" DeleteMethod="deleteQuery" OnDeleted="ods_Deleted">
<DeleteParameters>
<asp:Parameter Name="Original_NumTask" Type="String" />
</DeleteParameters>
<SelectParameters>
<asp:ControlParameter ControlID="hfCurrStatus" DefaultValue="0" Name="CurrStatus" PropertyName="Value" Type="Int32" />
<asp:SessionParameter Name="CodArt" SessionField="currCodArt" Type="String" />
<asp:SessionParameter Name="NumTask" SessionField="currNumTask" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
</div>
</div>
+117 -69
View File
@@ -5,84 +5,132 @@ using System.Text;
namespace C_TRACK
{
public partial class doExport : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
public partial class doExport : System.Web.UI.Page
{
string delimiter = ",";
#region Protected Properties
//prepare the output stream
Response.Clear();
Response.ContentType = "text/csv";
Response.AppendHeader("Content-Disposition", "attachment; filename=ctrack_report.csv");
string value = "";
StringBuilder builder = new StringBuilder();
// recupero oggetti parametrici...
string from = Request.QueryString["from"];
string to = Request.QueryString["to"];
DateTime dateFrom = DateTime.Today.AddYears(-1);
DateTime dateTo = DateTime.Today.AddDays(1);
// se è diverso da vuoto faccio parse...
if (from != "" && from !=null)
{
DateTime.TryParse(from, out dateFrom);
}
if (to != "" && to != null)
{
DateTime.TryParse(to, out dateTo);
}
// leggo tabella
var dt = dataLayer.man.taTR.getByFilt("", dateFrom, dateTo);
//write the csv column headers
for (int i = 0; i < dt.Columns.Count; i++)
{
value = dt.Columns[i].ColumnName;
// Implement special handling for values that contain comma or quote
// Enclose in quotes and double up any double quotes
if (value.IndexOfAny(new char[] { '"', ',' }) != -1)
builder.AppendFormat("\"{0}\"", value.Replace("\"", "\"\""));
else
protected DateTime dateFrom
{
builder.Append(value);
get
{
DateTime answ = DateTime.Today.AddYears(-1);
// se è diverso da vuoto faccio parse...
if (!string.IsNullOrEmpty(from))
{
DateTime.TryParse(from, out answ);
}
return answ;
}
}
Response.Write(value);
Response.Write((i < dt.Columns.Count - 1) ? delimiter : Environment.NewLine);
builder.Clear();
}
//write the data
foreach (DataRow row in dt.Rows)
{
for (int i = 0; i < dt.Columns.Count; i++)
protected DateTime dateTo
{
value = row[i].ToString();
// Implement special handling for values that contain comma or quote
// Enclose in quotes and double up any double quotes
if (value.IndexOfAny(new char[] { '"', ',' }) != -1)
builder.AppendFormat("\"{0}\"", value.Replace("\"", "\"\""));
else
{
builder.Append(value);
}
Response.Write(builder.ToString());
Response.Write((i < dt.Columns.Count - 1) ? delimiter : Environment.NewLine);
builder.Clear();
get
{
DateTime answ = DateTime.Today.AddDays(1);
// se è diverso da vuoto faccio parse...
if (!string.IsNullOrEmpty(to))
{
DateTime.TryParse(to, out answ);
}
return answ;
}
}
}
Response.End();
protected string from
{
get
{
return Request.QueryString["from"];
}
}
protected string mode
{
get
{
return Request.QueryString["mode"];
}
}
protected string to
{
get
{
return Request.QueryString["to"];
}
}
#endregion Protected Properties
#region Protected Methods
protected void Page_Load(object sender, EventArgs e)
{
string delimiter = ",";
//prepare the output stream
Response.Clear();
Response.ContentType = "text/csv";
Response.AppendHeader("Content-Disposition", "attachment; filename=ctrack_report.csv");
string value = "";
StringBuilder builder = new StringBuilder();
DataTable dt = new DataTable();
// leggo tabella secondo il MODO
if (mode == "aggr")
{
dt = (DataTable)dataLayer.man.taTRA.getByFilt("", dateFrom, dateTo);
}
else
{
dt = (DataTable)dataLayer.man.taTR.getByFilt("", dateFrom, dateTo);
}
// write the csv column headers
for (int i = 0; i < dt.Columns.Count; i++)
{
value = dt.Columns[i].ColumnName;
// Implement special handling for values that contain comma or quote
// Enclose in quotes and double up any double quotes
if (value.IndexOfAny(new char[] { '"', ',' }) != -1)
builder.AppendFormat("\"{0}\"", value.Replace("\"", "\"\""));
else
{
builder.Append(value);
}
Response.Write(value);
Response.Write((i < dt.Columns.Count - 1) ? delimiter : Environment.NewLine);
builder.Clear();
}
//write the data
foreach (DataRow row in dt.Rows)
{
for (int i = 0; i < dt.Columns.Count; i++)
{
value = row[i].ToString();
// Implement special handling for values that contain comma or quote
// Enclose in quotes and double up any double quotes
if (value.IndexOfAny(new char[] { '"', ',' }) != -1)
builder.AppendFormat("\"{0}\"", value.Replace("\"", "\"\""));
else
{
builder.Append(value);
}
Response.Write(builder.ToString());
Response.Write((i < dt.Columns.Count - 1) ? delimiter : Environment.NewLine);
builder.Clear();
}
}
Response.End();
}
#endregion Protected Methods
}
}
}
+19 -10
View File
@@ -3,17 +3,26 @@
<%@ Register Src="~/WebUserControls/mod_checkOpr.ascx" TagPrefix="uc1" TagName="mod_checkOpr" %>
<%@ Register Src="~/WebUserControls/mod_periodo.ascx" TagPrefix="uc1" TagName="mod_periodo" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="body" runat="server">
<div class="card">
<div class="card-header text-center text-primary text-uppercase py-1">
<b>Gestione Commesse</b>
<div class="card">
<div class="card-header text-center text-primary text-uppercase py-1">
<b>Gestione Commesse</b>
</div>
<div class="card-body p-1">
<uc1:mod_checkOpr runat="server" ID="mod_checkOpr" />
<div class="row my-2">
<div class="col-6">
<uc1:mod_periodo runat="server" ID="mod_periodo" />
</div>
<div class="col-3">
<asp:HyperLink runat="server" ID="hlExportFull" Target="_blank" CssClass="btn btn-success text-light btn-block"><i class="fas fa-download"></i> Export FULL</asp:HyperLink>
</div>
<div class="col-3">
<asp:HyperLink runat="server" ID="hlExportComp" Target="_blank" CssClass="btn btn-success text-light btn-block"><i class="fas fa-download"></i> Export Compatto</asp:HyperLink>
</div>
</div>
</div>
</div>
<div class="card-body p-1">
<uc1:mod_checkOpr runat="server" ID="mod_checkOpr" />
<uc1:mod_periodo runat="server" id="mod_periodo" />
</div>
</div>
</asp:Content>
</asp:Content>
+23 -4
View File
@@ -7,11 +7,30 @@ using System.Web.UI.WebControls;
namespace C_TRACK
{
public partial class export : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
public partial class export : System.Web.UI.Page
{
#region Private Methods
private void mod_periodo_eh_doRefresh(object sender, EventArgs e)
{
updateUrl();
}
private void updateUrl()
{
hlExportFull.NavigateUrl = string.Format("~/doExport?mode=full&from={0:yyyy-MM-dd}&to={1:yyyy-MM-dd}", mod_periodo.dataFrom, mod_periodo.dataTo);
hlExportComp.NavigateUrl = string.Format("~/doExport?mode=aggr&from={0:yyyy-MM-dd}&to={1:yyyy-MM-dd}", mod_periodo.dataFrom, mod_periodo.dataTo);
}
#endregion Private Methods
#region Protected Methods
protected void Page_Load(object sender, EventArgs e)
{
mod_periodo.eh_doRefresh += mod_periodo_eh_doRefresh;
}
#endregion Protected Methods
}
}
}
+26 -6
View File
@@ -7,11 +7,13 @@
// </generato automaticamente>
//------------------------------------------------------------------------------
namespace C_TRACK {
public partial class export {
namespace C_TRACK
{
public partial class export
{
/// <summary>
/// Controllo mod_checkOpr.
/// </summary>
@@ -20,7 +22,7 @@ namespace C_TRACK {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::C_TRACK.WebUserControls.mod_checkOpr mod_checkOpr;
/// <summary>
/// Controllo mod_periodo.
/// </summary>
@@ -29,5 +31,23 @@ namespace C_TRACK {
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::C_TRACK.WebUserControls.mod_periodo mod_periodo;
/// <summary>
/// Controllo hlExportFull.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.HyperLink hlExportFull;
/// <summary>
/// Controllo hlExportComp.
/// </summary>
/// <remarks>
/// Campo generato automaticamente.
/// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
/// </remarks>
protected global::System.Web.UI.WebControls.HyperLink hlExportComp;
}
}
Vendored
+3 -3
View File
@@ -13,9 +13,9 @@ pipeline {
steps {
/* calcolo numero versione... diverso x branch MASTER/DEVELOP */
script {
withEnv(['NEXT_BUILD_NUMBER=223']) {
// env.versionNumber = VersionNumber(versionNumberString : '1.4.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2018-01-01', skipFailedBuilds: true)
env.versionNumber = VersionNumber(versionNumberString : '1.4.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2018-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
withEnv(['NEXT_BUILD_NUMBER=224']) {
// env.versionNumber = VersionNumber(versionNumberString : '1.5.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2018-01-01', skipFailedBuilds: true)
env.versionNumber = VersionNumber(versionNumberString : '1.5.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2018-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
env.APP_NAME = 'C.TRACK'
}
}
+2 -2
View File
@@ -18,7 +18,7 @@ Ci sono le seguenti maschere principali:
* Creazione TASK (commesse) - nuova
* MAIN BCode (derivata da XPST)
* DATA EXPORT (esportazione tracciati RAW delel registrazioni x commessa, formato csv reale o da tab con type excel/csv)
* DATA EXPORT (esportazione tracciati RAW delle registrazioni x commessa, formato csv reale o da tab con type excel/csv)
## Modalità operativa
@@ -46,7 +46,7 @@ In particolare si tratta di
* Totale tempo fasi / pezzi --> TC stimato
* Si potrebbe costruire un grafico / curva (opzionale, in secondo periodo) per indicare una CURVA del TCiclo al variare della uantità di pezzi lanciati in un ordine di produzione
## NOte operative
## Note operative
Ci sono alcune pagine speciali:
BIN
View File
Binary file not shown.