From 1af238b30af54026f381ddcb0cb5a94c21c9f9f4 Mon Sep 17 00:00:00 2001 From: Giancarlo Rottoli Date: Tue, 28 Dec 2021 09:49:40 +0100 Subject: [PATCH 1/2] Update Repoprt Cart 1.3 e Remnant --- ReportProject/Sauder/Cart.rdl | 266 +++--- ReportProject/Sauder/Cart_ver_1.2.1.rdl | 632 ++++++++++++++ ReportProject/Sauder/ProductionDay.rdl | 712 ++++++++++++++++ ReportProject/Sauder/ProductionHour.rdl | 702 ++++++++++++++++ ReportProject/Sauder/ProductionHour_OLD.rdl | 888 ++++++++++++++++++++ ReportProject/Sauder/Remnant.rdl | 315 +++++++ ReportProject/Sauder/Report1 - Backup.rdl | 517 ++++++++++++ ReportProject/Sauder/Sauder.rptproj | 36 +- ReportProject/Sauder/Sauder_NKC2_Prod.rds | 9 + 9 files changed, 3952 insertions(+), 125 deletions(-) create mode 100644 ReportProject/Sauder/Cart_ver_1.2.1.rdl create mode 100644 ReportProject/Sauder/ProductionDay.rdl create mode 100644 ReportProject/Sauder/ProductionHour.rdl create mode 100644 ReportProject/Sauder/ProductionHour_OLD.rdl create mode 100644 ReportProject/Sauder/Remnant.rdl create mode 100644 ReportProject/Sauder/Report1 - Backup.rdl create mode 100644 ReportProject/Sauder/Sauder_NKC2_Prod.rds diff --git a/ReportProject/Sauder/Cart.rdl b/ReportProject/Sauder/Cart.rdl index 3585f6e..a72c0c3 100644 --- a/ReportProject/Sauder/Cart.rdl +++ b/ReportProject/Sauder/Cart.rdl @@ -11,7 +11,7 @@ - 8.86445in + 9.59847in @@ -38,7 +38,7 @@ - + true true @@ -47,7 +47,7 @@ ="C " & Fields!CartIndex.Value @@ -55,41 +55,38 @@ - textbox1 - 10.69201cm - 4.03708in + 10.40978cm + 3.45027in 7.46875in 1 - Middle + Top 2pt 2pt - 2pt - 2pt + 1pt + 1pt - 1.5in + 3.28646in - 1.67938in - - - 1.41667in + 1.35938in - 0.25in + 0.28646in @@ -102,9 +99,8 @@ Order.Line @@ -137,46 +133,6 @@ - - - - true - true - - - - - Model - - - - - - - Textbox10 - - - - Black - - 1pt - - 2pt - 2pt - 2pt - 2pt - - - - @@ -188,9 +144,8 @@ Kit Qty @@ -226,7 +181,7 @@ - 0.25in + 0.68229in @@ -239,8 +194,8 @@ =Fields!OrderExtCode.Value @@ -273,45 +228,6 @@ - - - - true - true - - - - - =Fields!FamilyCode.Value - - - - - - - FamilyCode - - - - Black - - 1pt - - 2pt - 2pt - 2pt - 2pt - - - - @@ -323,8 +239,8 @@ =Fields!TotKit.Value @@ -344,6 +260,11 @@ 1pt + + Black + + 1pt + Black @@ -359,13 +280,115 @@ + + 0.3125in + + + + + true + true + + + + + Model + + + + + + + Textbox6 + + + + Black + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + 2 + + + + + + + 0.68875in + + + + + true + true + + + + + =Fields!FamilyCode.Value + + + + + + + FamilyCode + + + + Black + + 1pt + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + 2 + + + + + - @@ -375,14 +398,19 @@ + + + + + stp_prt_Cart - 8.34362in - 1.41541in - 0.5in - 4.59605in + 7.62847in + 1.41146in + 1.97in + 4.64584in 2 @@ -432,14 +460,14 @@ DueDate 3.09166in - 1.09001in + 0.99626in 7.46875in 3 - Middle + Bottom 2pt 2pt 2pt @@ -518,7 +546,7 @@ 0.0093in 0.00001cm - 8.86445in + 9.59847in 7.46875in - 9in + 9.92027in + + + + + true + true + + + + + ="C " & Fields!CartIndex.Value + + + + + + + textbox1 + 10.69201cm + 4.03708in + 7.46875in + 1 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + 1.5in + + + 1.67938in + + + 1.41667in + + + + + 0.25in + + + + + true + true + + + + + Order.Line + + + + + + + Textbox8 + + + + Black + + 1pt + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Model + + + + + + + Textbox10 + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Kit Qty + + + + + + + Textbox12 + + + + Black + + 1pt + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.25in + + + + + true + true + + + + + =Fields!OrderExtCode.Value + + + + + + + OrderExtCode + + + + Black + + 1pt + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!FamilyCode.Value + + + + + + + FamilyCode + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!TotKit.Value + + + + + + + TotKit + + + + Black + + 1pt + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + After + + + + + + + stp_prt_Cart + 8.34362in + 1.41541in + 0.5in + 4.59605in + 2 + + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + Black + + 1pt + + + + + true + + + + + =First(Fields!DueDate.Value) + + + + + + + DueDate + 3.09166in + 1.09001in + 7.46875in + 3 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Fields!CartDtmx.Value.ToString() + + + + + + + Textbox3 + 2.77222in + 2.23438in + 0.25in + 2.80833in + 4 + + + 2pt + 2pt + 2pt + 2pt + + + + true + + + + 9in + + + + + + + textbox4 + + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Date + + + + + + + Textbox5 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Parts + + + + + + + textbox20 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Scrap + + + + + + + textbox21 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + OEE % + + + + + + + Textbox66 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.55cm + + + + + true + true + + + + + =Fields!PlaceCod.Value + + + + + + + PlaceCod1 + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!DataRif.Value + + + + + + + DataRif + + + + + + + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Sum(Fields!ItmProd.Value) + + + + + + + ItmProd1 + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Sum(Fields!ItmScrap.Value) + + + + + + + ItmScrap1 + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =iif( Sum(Fields!MinDisp.Value) = 0 , Nothing , Sum(Fields!MinRun.Value) / Sum(Fields!MinDisp.Value) ) + + + + + + + Textbox30 + + + + + + + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + true + + + + + =Fields!DataRif.Value + + + + + =Fields!DataRif.Value + + + + + + + + + stp_prt_ProductionHour + + + =Fields!DataOraRif.Value + + + 1.15cm + 17.4cm + + 0.5pt + + + Black + + + + Black + + + + Black + + + + Black + + + + + + true + + + + + + + + + + + + + + + + + + + + + =Fields!PlaceCod.Value + + + Between + + =Fields!PlaceCod.Value + + + + =Fields!PlaceCod.Value + + + =Fields!DataOraRif.Value + + + + + + + + + + Output + true + + + + stp_prt_ProductionHour + + End + + 0.57267in + 7.4479in + + + + 0.67584in + + + + + + + textbox4 + + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Date + + + + + + + Textbox5 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Parts + + + + + + + textbox20 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Scrap + + + + + + + textbox21 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + OEE % + + + + + + + Textbox66 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.21654in + + + + + true + true + + + + + =Fields!PlaceCod.Value + + + + + + + PlaceCod + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!DataOraRif.Value + + + + + + + DataOraRif + + + + + + + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!ItmProd.Value + + + + + + + ItmProd + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!ItmScrap.Value + + + + + + + ItmScrap + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =iif( Fields!MinDisp.Value = 0 , Nothing , Fields!MinRun.Value / Fields!MinDisp.Value ) + + + + + + + MinGreen + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + After + true + true + + + + Detail + + + + + Detail_Collection + Output + true + + + + stp_prt_ProductionHour + + + =Fields!DataOraRif.Value + + + 0.45276in + 6.99667in + + 0.5pt + + + Black + + + + Black + + + + Black + + + + Black + + + + + + true + + + + 0.67584in + + + + + + + textbox4 + + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Date + + + + + + + Textbox5 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Parts + + + + + + + textbox20 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Scrap + + + + + + + textbox21 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + OEE % + + + + + + + Textbox66 + + + + Black + + 0.5pt + + + Black + + 0.5pt + + WhiteSmoke + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.23083in + + + + + true + true + + + + + =Fields!PlaceCod.Value + + + + + + + PlaceCod + + + + Black + + 1pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!DataOraRif.Value + + + + + + + DataOraRif + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!ItmProd.Value + + + + + + + ItmProd + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!ItmScrap.Value + + + + + + + ItmScrap + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =iif( Fields!MinDisp.Value = 0 , Nothing , Fields!MinRun.Value / Fields!MinDisp.Value ) + + + + + + + MinGreen + + + + Black + + 1pt + + + Black + + 0.5pt + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + After + true + true + + + + Detail + + + + + Detail_Collection + Output + true + + + + stp_prt_MachineProductionDateHour + + + =Fields!DataOraRif.Value + + + 1.44657in + 0.01322cm + 0.45083in + 7.46355in + + 0.5pt + + + Black + + + + Black + + + + Black + + + + Black + + + + + + + + true + true + + + + + PLACE : + + + + + =iif(Parameters!PlaceCod.Value = "*", "ALL", Parameters!PlaceCod.Value ) + + + + + + + StackIndex + 0.38153cm + 0.31751cm + 0.27in + 5.42708in + + + + true + true + + + + + FROM DATE : + + + + + =Parameters!dtStart.Value + + + + + + + StackIndex + 1.06733cm + 0.3175cm + 0.27in + 5.42708in + 1 + + + + true + true + + + + + TO DATE : + + + + + =Parameters!dtEnd.Value + + + + + + + StackIndex + 1.75313cm + 0.31751cm + 0.27in + 5.42708in + 2 + + + + true + 0.1618in + 0.00522in + 1.1in + 7.46351in + 1 + + 0.5pt + + + Black + + + Black + + + Black + + + Black + + + + + true + + + + true + true + + + + + PRODUCTION + + + + + + + textbox1 + 0.49541in + 7.46875in + 1 + + + Top + 2pt + 2pt + 2pt + 2pt + + + + 2.62375in + + + + + + + Destination + 2.02671cm + 3.73239cm + 0.3875in + 2.44331in + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + External + =Replace(Fields!QRCodeBaseUrl.Value.ToString(),"QRCODEVALUE",Fields!CodRemnant.Value.ToString()) + +' la stringa nel Campo è https://qrcode.steamware.net/HOME/QR_site/JSON?val={'baseUrl':'{0}','parameters':\['QRCODEVALUE'\]} +' dove la \ prima della [ serve perchè è una stringa quindi si trasforma poi in +' https://qrcode.steamware.net/HOME/QR_site/JSON?val={'baseUrl':'{0}','parameters':['QRCODEVALUE']} + + +'https://qrcode.steamware.net/HOME/QR_site/JSON?val={'baseUrl':'http://10.74.82.219/StockMan/STEA/Items/Details/{0}?StockItemID={0}','parameters':['VARIABILE']} + FitProportional + 0.2875in + 0.1in + 1.3in + 1.3in + 1 + + + + + + true + + + + + =First(Fields!DescRemnant02.Value) + + + + + + + 3.18736cm + 3.73239cm + 0.33264in + 2.44331in + 2 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + true + + + + + =First(Fields!CodRemnant.Value) + + + + + + + 0.73025cm + 3.73239cm + 0.44097in + 2.41553in + 3 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + true + + 0.5pt + + + Gray + + 0.5pt + + + Gray + + 0.5pt + + + Gray + + 0.5pt + + + Gray + + 0.5pt + + + + + + + + + + + + + + + + + + + + =Fields!CodRemnant.Value + + + Output + true + + + + stp_prt_Remnant + + End + + 1.98819in + 3.91275in + + + + 1.98819in + + textbox1 + Report1 + true + 0.36in + + + + + + + PlaceCod + =Fields!PlaceCod.Value + true + 0.27in + + + 0.5in + + textbox2 + Data Ora Rif + true + 0.22in + 1in + + + + + + + + textbox3 + Itm Prod + true + 0.22in + 1in + + + + + + + + textbox4 + Itm Scrap + true + 0.22in + 1in + + + + + + + + textbox5 + Min Green + true + 0.22in + 1in + + + + + 0.22in + + + +
+ + + + + + + + DataOraRif + =Fields!DataOraRif.Value + DataSet1 + true + 0.21in + 1in + + + + + + + + ItmProd + =Fields!ItmProd.Value + true + 0.21in + 1in + + + + + + + + ItmScrap + =Fields!ItmScrap.Value + true + 0.21in + 1in + + + + + + + + MinGreen + =Fields!MinGreen.Value + true + 0.21in + 1in + + + + + 0.21in + + +
+ + + 1in + + + 1in + + + 1in + + + 1in + + + DataSet1 + + + + + =Fields!DataOraRif.Value + + + + + =Fields!DataOraRif.Value + + +
+ + + + + + + + textbox6 + Total + true + 0.21in + 1in + + + + + + + + textbox7 + =Sum(Fields!ItmProd.Value) + true + 0.21in + 1in + + + + + + + + textbox8 + =Sum(Fields!ItmScrap.Value) + true + 0.21in + 1in + + + + + + + + textbox9 + =Sum(Fields!MinGreen.Value) + true + 0.21in + 1in + + + + + 0.21in + + +
+
+
+
+
+ + + =Fields!PlaceCod.Value + + true + + + + =Fields!PlaceCod.Value + + + 0.36in + DataSet1 +
+ + + en-US + 1in + 1in + 1in + 1in + 8.5in + 11in + + + + + PlaceCod + System.String + + + DataOraRif + System.DateTime + + + ItmProd + System.Int32 + + + ItmScrap + System.Int32 + + + MinGreen + System.Int64 + + + + Sauder_NKC + Text + EXEC prt.stp_prt_MachineProductionDateHour @dtstart, @DtEnd + true + + + =Parameters!dtstart.Value + + + =Parameters!DtEnd.Value + + + 0 + + + + + + String + dtstart + + + String + Dt End + + + \ No newline at end of file diff --git a/ReportProject/Sauder/Sauder.rptproj b/ReportProject/Sauder/Sauder.rptproj index c3adc9d..5d6e335 100644 --- a/ReportProject/Sauder/Sauder.rptproj +++ b/ReportProject/Sauder/Sauder.rptproj @@ -6,6 +6,10 @@ Sauder_NKC.rds Sauder_NKC.rds + + Sauder_NKC2_Prod.rds + Sauder_NKC2_Prod.rds + @@ -26,13 +30,21 @@ Bin_ver_1.3.1.rdl - BunkGroup_ver_2.1.1.rdl - BunkGroup_ver_2.1.1.rdl + BunkGroup.rdl + BunkGroup.rdl BunkGroup_ver_1.0.1.rdl BunkGroup_ver_1.0.1.rdl + + BunkGroup_ver_2.1.1.rdl + BunkGroup_ver_2.1.1.rdl + + + BunkList.rdl + BunkList.rdl + BunkList_ver_1.1.1.rdl BunkList_ver_1.1.1.rdl @@ -70,12 +82,24 @@ Part_v_1.1.1.rdl - BunkGroup.rdl - BunkGroup.rdl + ProductionDay.rdl + ProductionDay.rdl - BunkList.rdl - BunkList.rdl + ProductionHour.rdl + ProductionHour.rdl + + + ProductionHour_OLD.rdl + ProductionHour_OLD.rdl + + + Remnant.rdl + Remnant.rdl + + + Cart_ver_1.2.1.rdl + Cart_ver_1.2.1.rdl diff --git a/ReportProject/Sauder/Sauder_NKC2_Prod.rds b/ReportProject/Sauder/Sauder_NKC2_Prod.rds new file mode 100644 index 0000000..65f8440 --- /dev/null +++ b/ReportProject/Sauder/Sauder_NKC2_Prod.rds @@ -0,0 +1,9 @@ + + + + SQL + Data Source=SQL2016PROD;Initial Catalog=Sauder_NKC2_Prod + true + + 6aabcfbd-ae03-4b98-9dfa-c70fa89ce5b3 + \ No newline at end of file From c7a52ea94282c62b540e066646b3665eb35ad304 Mon Sep 17 00:00:00 2001 From: Giancarlo Rottoli Date: Tue, 28 Dec 2021 10:12:05 +0100 Subject: [PATCH 2/2] Cancello Report spazzatura --- ReportProject/Sauder/Report1 - Backup.rdl | 517 ---------------------- 1 file changed, 517 deletions(-) delete mode 100644 ReportProject/Sauder/Report1 - Backup.rdl diff --git a/ReportProject/Sauder/Report1 - Backup.rdl b/ReportProject/Sauder/Report1 - Backup.rdl deleted file mode 100644 index 53f8ff2..0000000 --- a/ReportProject/Sauder/Report1 - Backup.rdl +++ /dev/null @@ -1,517 +0,0 @@ - - - - - 2999847b-ad29-438e-96ab-bea40c862ca4 - Sauder_NKC - - - 77c2fb97-bbf0-4e2e-b4c4-c4959aac6fcc - 5in - - 1.5in - 0.5in - - - - textbox1 - Report1 - true - 0.36in - - - - - - - PlaceCod - =Fields!PlaceCod.Value - true - 0.27in - - - 0.5in - - textbox2 - Data Ora Rif - true - 0.22in - 1in - - - - - - - - textbox3 - Itm Prod - true - 0.22in - 1in - - - - - - - - textbox4 - Itm Scrap - true - 0.22in - 1in - - - - - - - - textbox5 - Min Green - true - 0.22in - 1in - - - - - 0.22in - - - -
- - - - - - - - DataOraRif - =Fields!DataOraRif.Value - DataSet1 - true - 0.21in - 1in - - - - - - - - ItmProd - =Fields!ItmProd.Value - true - 0.21in - 1in - - - - - - - - ItmScrap - =Fields!ItmScrap.Value - true - 0.21in - 1in - - - - - - - - MinGreen - =Fields!MinGreen.Value - true - 0.21in - 1in - - - - - 0.21in - - -
- - - 1in - - - 1in - - - 1in - - - 1in - - - DataSet1 - - - - - =Fields!DataOraRif.Value - - - - - =Fields!DataOraRif.Value - - -
- - - - - - - - textbox6 - Total - true - 0.21in - 1in - - - - - - - - textbox7 - =Sum(Fields!ItmProd.Value) - true - 0.21in - 1in - - - - - - - - textbox8 - =Sum(Fields!ItmScrap.Value) - true - 0.21in - 1in - - - - - - - - textbox9 - =Sum(Fields!MinGreen.Value) - true - 0.21in - 1in - - - - - 0.21in - - -
-
-
-
-
- - - =Fields!PlaceCod.Value - - true - - - - =Fields!PlaceCod.Value - - - 0.36in - DataSet1 -
-
- - en-US - 1in - 1in - 1in - 1in - 8.5in - 11in - - - - - PlaceCod - System.String - - - DataOraRif - System.DateTime - - - ItmProd - System.Int32 - - - ItmScrap - System.Int32 - - - MinGreen - System.Int64 - - - - Sauder_NKC - Text - EXEC prt.stp_prt_MachineProductionDateHour @dtstart, @DtEnd - true - - - =Parameters!dtstart.Value - - - =Parameters!DtEnd.Value - - - 0 - - - - - - String - dtstart - - - String - Dt End - - -
\ No newline at end of file