fix: aggregate Plant3D plugin usage without computer field
This commit is contained in:
@@ -0,0 +1,19 @@
|
|||||||
|
XLSX files: 151
|
||||||
|
Unique workbooks by SHA-256: 148
|
||||||
|
Duplicate workbooks: 3
|
||||||
|
Rows examined: 16710
|
||||||
|
Valid aggregate rows: 16574
|
||||||
|
Rejected rows: 139
|
||||||
|
Unique plugins: 25
|
||||||
|
Date range: 2024-06-13 .. 2026-07-30
|
||||||
|
Total launches: 227974
|
||||||
|
Most used plugin: P_Rec_Annot
|
||||||
|
Most active month: 2026-05
|
||||||
|
Computer field available: NO
|
||||||
|
Computer matrix generated: NO
|
||||||
|
|
||||||
|
Only Plant3D sheets were analyzed. Source files are anonymized as source-0001.xlsx; project numbers, names, users and paths are not published.
|
||||||
|
|
||||||
|
The semantic of File was not used for deduplication: rows with same plugin/date/count were retained because File may represent separate aggregate dimensions.
|
||||||
|
|
||||||
|
Repeat: .\tools\plugin-usage\Build-Plant3DPluginUsageAggregate.ps1 -SourceRoot C:\dev\TEMP\CheckPlugin -SheetName Plant3D -OutputDirectory .\migration\audits\plugin-usage-plant3d-aggregate-20260731
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
# Computer data availability
|
||||||
|
|
||||||
|
The source workbooks do not contain an explicit computer-name column. Explicit ComputerName/MachineName/HostName properties in core, custom and app properties: 0. The User field is not a reliable substitute and was not used. A plugin x computer matrix cannot be built from this XLSX set without an additional source: MachineName log, computer name in workbook name, explicit workbook property, User-to-computer mapping, or the source database.
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
"SourceId","CanonicalSourceId","SHA256","Status"
|
||||||
|
"source-0052.xlsx","source-0047.xlsx","170D835A968A0590ACEA2909AE9DD204A8A7B2B01FD4254FBFD30F7216B2D4C4","DUPLICATE_WORKBOOK"
|
||||||
|
"source-0101.xlsx","source-0029.xlsx","5F8D42AD0580CFD7F4CB407B45A1B7E4D4F26D9A04A2ADF7DDA7028499BD2146","DUPLICATE_WORKBOOK"
|
||||||
|
"source-0109.xlsx","source-0034.xlsx","205F5F22C7E7DD5C9F04B9CA730BC3E79A23A561E280838C62AC4B79741462D5","DUPLICATE_WORKBOOK"
|
||||||
|
+16575
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,15 @@
|
|||||||
|
# Правила агрегации Plant3D XLSX
|
||||||
|
|
||||||
|
Обрабатываются только файлы `*.xlsx`, исключая временные `~$*.xlsx`, и только лист `Plant3D` без учёта регистра. Остальные листы не читаются.
|
||||||
|
|
||||||
|
Заголовки обнаруживаются по именам столбцов, а не по заранее заданным номерам. Фактическая модель источника: `Плагин`, `Дата`, `Количество запусков`; поля `Файл`, `Пользователь`, `Номер проекта` не публикуются. `Пользователь` не используется как компьютер.
|
||||||
|
|
||||||
|
`Дата` поддерживает Excel serial date, `dd.MM.yyyy`, `dd.MM.yyyy HH:mm`, `dd.MM.yyyy HH:mm:ss`, `yyyy-MM-dd`, `yyyy-MM-dd HH:mm:ss`, ISO-подобные и русские даты. Дата без времени допустима и нормализуется к `UsageDate`; время не выдумывается.
|
||||||
|
|
||||||
|
`Количество запусков` разбирается как числовая мера. Принимаются целые числа, в том числе строковые числовые значения, ноль и кэшированное числовое значение формулы. Отрицательные, дробные, пустые, нечисловые и некэшированные значения отклоняются как `INVALID_LAUNCH_COUNT`.
|
||||||
|
|
||||||
|
Итоговая мера — сумма `Количество запусков`, а не количество строк. Побайтово одинаковые книги группируются по SHA-256; канонический экземпляр анализируется один раз, копии фиксируются как `DUPLICATE_WORKBOOK`. Одинаковые строки внутри одной книги не удаляются автоматически: столбец `Файл` может представлять отдельное измерение исходного агрегата.
|
||||||
|
|
||||||
|
`SourceId` обезличен (`source-0001.xlsx`) и назначается в стабильном порядке полного пути только внутри read-only анализа. Фактические имена файлов, пользователей, проектов и пути в результаты не записываются.
|
||||||
|
|
||||||
|
Проверены `docProps/core.xml`, `docProps/custom.xml`, `docProps/app.xml`; явных свойств `ComputerName`, `MachineName`, `HostName` нет.
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,26 @@
|
|||||||
|
"Плагин","2024-06","2024-11","2024-12","2025-01","2025-02","2025-03","2025-04","2025-05","2025-06","2025-07","2025-08","2025-09","2025-10","2025-11","2025-12","2026-01","2026-02","2026-03","2026-04","2026-05","2026-06","2026-07"
|
||||||
|
"ProjectSnapshot.2018","5","0","21","28","25","55","14","4","5","11","8","12","113","42","23","6","14","49","32","32","21","54"
|
||||||
|
"P_Rec_Annot","0","5","370","1620","3178","5776","13225","8135","10074","8690","12251","21471","7975","15953","7254","10127","16386","12168","16516","35426","8299","3897"
|
||||||
|
"P_Serv_CreateLineGroupAnnotationText","0","0","6","9","15","9","12","10","1","13","17","10","6","19","11","4","11","12","8","31","7","14"
|
||||||
|
"P3DSetOrthoLayers","0","0","1","3","108","26","10","0","0","57","40","114","130","396","408","18","56","253","40","141","2","19"
|
||||||
|
"P_Check_Pipe","0","0","50","313","69","20","54","61","34","22","24","34","59","27","14","35","33","16","52","42","30","17"
|
||||||
|
"P_Rec_Print","0","0","11","3","69","44","46","7","25","9","33","41","40","37","45","17","50","66","64","118","105","106"
|
||||||
|
"P_Serv_CompP3D","0","0","9","29","36","55","41","28","5","16","16","26","11","63","44","60","129","217","169","14","25","16"
|
||||||
|
"P_Check_Project","0","0","8","10","19","20","24","5","10","6","14","39","193","66","8","13","25","11","14","23","6","7"
|
||||||
|
"P_Rec_Update","0","0","22","28","22","33","33","29","11","11","11","25","96","73","8","13","18","33","83","71","47","62"
|
||||||
|
"P_Check_CompP3D","0","0","6","3","5","13","46","4","1","19","0","1","16","3","2","10","17","31","2","9","2","1"
|
||||||
|
"P_Task_MO07","0","0","1","0","0","3","4","0","0","0","1","1","1","1","3","0","22","12","5","0","39","19"
|
||||||
|
"P_Serv_Supports_Highlight","0","0","0","0","0","0","1","12","0","1","0","1","5","9","4","5","21","14","2","4","23","39"
|
||||||
|
"P_Imp_FromPTH","0","0","25","7","70","26","26","23","20","29","20","63","127","129","18","58","127","71","28","31","69","49"
|
||||||
|
"P_Exp_ToHydra","0","0","3","5","9","20","16","0","0","11","0","0","0","0","0","0","4","0","1","0","1","4"
|
||||||
|
"P_Check_VtIsoChanges","0","0","0","1","7","1","3","2","1","1","1","7","2","5","7","0","0","5","5","27","0","9"
|
||||||
|
"P3DCommands v.0.0.1","0","0","0","31","17","17","15","6","5","18","20","22","19","23","6","3","6","4","60","91","76","97"
|
||||||
|
"P_Serv_IsoMaster_Update","0","0","0","7","1","0","3","0","0","1","2","2","1","0","0","0","1","2","0","5","0","1"
|
||||||
|
"--P3DUpdateFlanges","0","0","1","0","0","2","2","1","0","0","0","0","0","0","0","2","0","0","0","0","0","0"
|
||||||
|
"--P_Rec_Brac","0","0","1","0","0","1","2","1","0","0","1","0","0","0","0","0","0","0","0","0","0","0"
|
||||||
|
"--P_Serv_ActualizeProjectBySpec","0","0","1","0","0","2","4","1","1","1","2","0","0","0","0","2","0","0","1","0","0","0"
|
||||||
|
"--P_Serv_UpdateLinearWeight","0","0","1","0","0","2","4","1","1","1","2","0","0","0","0","2","0","0","1","0","0","0"
|
||||||
|
"P3DUpdateFixedPipeLengths","0","0","2","4","3","4","1","2","0","0","1","1","1","2","0","2","0","1","3","4","1","1"
|
||||||
|
"A_Imp_FromNavis_Selection","0","0","0","0","1","2","2","22","0","6","6","0","7","2","0","4","3","3","0","0","2","2"
|
||||||
|
"P_Exp_ToStart","0","0","10","0","0","0","0","10","0","0","0","12","0","1","1","1","0","0","0","0","1","0"
|
||||||
|
"--GetSelectionLengthAndWeight","0","0","0","0","0","1","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0"
|
||||||
|
@@ -0,0 +1,26 @@
|
|||||||
|
"PluginName","PluginNameNormalized","RecordCount","TotalLaunches","FirstUsage","LastUsage","ActiveDays","ActiveMonths","AverageLaunchesPerActiveDay","MaxLaunchesPerDay","MaxUsageMonth","MaxMonthLaunches","ShareOfAllLaunches"
|
||||||
|
"P_Rec_Annot","P_REC_ANNOT","12363","218796","2024-11-14","2026-07-30","497","21","440,2334","16406","2026-05","35426","0,959741"
|
||||||
|
"P3DSetOrthoLayers","P3DSETORTHOLAYERS","502","1822","2024-12-23","2026-07-27","176","18","10,3523","121","2025-12","408","0,007992"
|
||||||
|
"P_Imp_FromPTH","P_IMP_FROMPTH","401","1016","2024-12-02","2026-07-30","208","20","4,8846","78","2026-02","127","0,004457"
|
||||||
|
"P_Serv_CompP3D","P_SERV_COMPP3D","460","1009","2024-12-03","2026-07-27","268","20","3,7649","32","2026-04","169","0,004426"
|
||||||
|
"P_Check_Pipe","P_CHECK_PIPE","592","1006","2024-12-02","2026-07-30","322","20","3,1242","192","2025-01","313","0,004413"
|
||||||
|
"P_Rec_Print","P_REC_PRINT","470","936","2024-12-04","2026-07-30","269","20","3,4796","34","2026-07","106","0,004106"
|
||||||
|
"P_Rec_Update","P_REC_UPDATE","367","729","2024-12-02","2026-07-30","203","20","3,5911","33","2025-10","96","0,003198"
|
||||||
|
"ProjectSnapshot.2018","PROJECTSNAPSHOT.2018","271","574","2024-06-13","2026-07-30","164","21","3,5","63","2025-10","113","0,002518"
|
||||||
|
"P3DCommands v.0.0.1","P3DCOMMANDS V.0.0.1","303","536","2025-01-21","2026-07-30","177","19","3,0282","30","2026-05","91","0,002351"
|
||||||
|
"P_Check_Project","P_CHECK_PROJECT","239","521","2024-12-04","2026-07-28","136","20","3,8309","62","2025-10","193","0,002285"
|
||||||
|
"P_Serv_CreateLineGroupAnnotationText","P_SERV_CREATELINEGROUPANNOTATIONTEXT","185","225","2024-12-04","2026-07-29","141","20","1,5957","13","2026-05","31","0,000987"
|
||||||
|
"P_Check_CompP3D","P_CHECK_COMPP3D","65","191","2024-12-10","2026-07-17","44","19","4,3409","39","2026-03","31","0,000838"
|
||||||
|
"P_Serv_Supports_Highlight","P_SERV_SUPPORTS_HIGHLIGHT","81","141","2025-04-24","2026-07-24","57","14","2,4737","20","2026-07","39","0,000618"
|
||||||
|
"P_Task_MO07","P_TASK_MO07","54","112","2024-12-04","2026-07-24","35","13","3,2","25","2026-07","19","0,000491"
|
||||||
|
"P_Check_VtIsoChanges","P_CHECK_VTISOCHANGES","50","84","2025-01-27","2026-07-29","40","16","2,1","16","2026-05","27","0,000368"
|
||||||
|
"P_Exp_ToHydra","P_EXP_TOHYDRA","25","74","2024-12-19","2026-07-03","16","10","4,625","15","2025-04","16","0,000325"
|
||||||
|
"A_Imp_FromNavis_Selection","A_IMP_FROMNAVIS_SELECTION","45","62","2025-02-27","2026-07-28","39","13","1,5897","9","2025-05","22","0,000272"
|
||||||
|
"P_Exp_ToStart","P_EXP_TOSTART","11","36","2024-12-19","2026-06-29","7","7","5,1429","12","2025-09","12","0,000158"
|
||||||
|
"P3DUpdateFixedPipeLengths","P3DUPDATEFIXEDPIPELENGTHS","28","33","2024-12-20","2026-07-10","26","16","1,2692","4","2025-03","4","0,000145"
|
||||||
|
"P_Serv_IsoMaster_Update","P_SERV_ISOMASTER_UPDATE","20","26","2025-01-23","2026-07-14","19","11","1,3684","3","2026-05","5","0,000114"
|
||||||
|
"--P_Serv_UpdateLinearWeight","--P_SERV_UPDATELINEARWEIGHT","14","15","2024-12-12","2026-04-17","14","9","1,0714","2","2025-04","4","6,6E-05"
|
||||||
|
"--P_Serv_ActualizeProjectBySpec","--P_SERV_ACTUALIZEPROJECTBYSPEC","14","15","2024-12-12","2026-04-17","14","9","1,0714","2","2025-04","4","6,6E-05"
|
||||||
|
"--P3DUpdateFlanges","--P3DUPDATEFLANGES","7","8","2024-12-12","2026-01-30","7","5","1,1429","2","2026-01","2","3,5E-05"
|
||||||
|
"--P_Rec_Brac","--P_REC_BRAC","6","6","2024-12-12","2025-08-07","6","5","1","1","2025-04","2","2,6E-05"
|
||||||
|
"--GetSelectionLengthAndWeight","--GETSELECTIONLENGTHANDWEIGHT","1","1","2025-03-27","2025-03-27","1","1","1","1","2025-03","1","4E-06"
|
||||||
|
Binary file not shown.
@@ -0,0 +1,140 @@
|
|||||||
|
"SourceId","SourceSheet","SourceRow","ReasonCode","DetectedPlugin","DetectedDateTime","DetectedLaunchCount","RowHash"
|
||||||
|
"source-0001.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","860EC73FD00172E6F77108124B655D6D361885E7C78B26753BA02EC2C83AEF57"
|
||||||
|
"source-0002.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","8EAF1B95C5F95E0C66245F1697A0F9BBDCBF3EE9B1B9268E0AEF28BDCF095AC4"
|
||||||
|
"source-0003.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","C1097E00A6D5E7F56A7CD33E531369E89CED361928D2B0B4A85612B6491E941B"
|
||||||
|
"source-0004.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","A003FF2ED46380957A9D4072B97D7F62DD4A76093131F404968FF7C14BA03271"
|
||||||
|
"source-0005.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","C034BCBDD5DA8AFC0E0802AD35ED6BAC46334A9BF5F53CE32BC5F26EE4CE3A69"
|
||||||
|
"source-0006.xlsx","","","SHEET_NOT_FOUND","",,"","376BA6599E836ED1AE8D44E559A0A7DDD7F8574E2CC072EC5677A004EA15129C"
|
||||||
|
"source-0007.xlsx","","","SHEET_NOT_FOUND","",,"","DDE2DC8E5C51C4C3200C993B99C9C4EDF13C5C6C01843B9F06C5F61736BED4A5"
|
||||||
|
"source-0008.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","F3E0D9166D1F4356C91168A819532E238A1073EDF04D9255F40A8FF0BDE3D15A"
|
||||||
|
"source-0011.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","26576E8F31CEE13BDB0D48D23C12EE45A8AAF2F661D445940ADE8F4FCC19D0D4"
|
||||||
|
"source-0012.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","2ACF2FFD81FB50D32AC0C89D433655D4550FC3684224961D125D710F7FAC5B7B"
|
||||||
|
"source-0013.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","6F5768BAFFF77E40E5C0039DF42C5BB11E0E1EBDAD94A050319450E2EEE26CFD"
|
||||||
|
"source-0014.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","2C10F752FFC3779DB61EBFEE9C66713778B27619E355CBB1EB26E0A588D4CD2E"
|
||||||
|
"source-0015.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","00DD317ED0077BF42A0778EA1BEBB2011C2134AE544BD33A4CB44652B901FAE1"
|
||||||
|
"source-0016.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","17502E16AA077ED9F2164E694E2329AF6208FEF828884879D3F57E78A5697015"
|
||||||
|
"source-0017.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","208AB234BF3D33C5B26F90D4314716AE92B69A4CDD9691BEE9CA039DD5DE099D"
|
||||||
|
"source-0018.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","545535354305B2B94A34B304C8C2531ECCE863DEC85DED670D3E3810D6D94E27"
|
||||||
|
"source-0019.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","665C064018A5D6889136960D14BC51A59C8FB1DC287698EE6238025BB27A0ADF"
|
||||||
|
"source-0020.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","3C1FC135CEB932DC1E6EFC1EFB0BA0216F313035A9556B082EC07823A7309B25"
|
||||||
|
"source-0022.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","CFC9A679301CAA8CE9F38B278A44D75C861F4E83D2EBE82A2E0E1698352F9B19"
|
||||||
|
"source-0023.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","FD055CCC3B4AEB8E3B4E0EE1146F1045F2AACDE6E6519405093263F2E78686A1"
|
||||||
|
"source-0024.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","03C07412010FC6F521F7DFC0DF38B9227C052B753227224B8661DDEB9A77F4CD"
|
||||||
|
"source-0025.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","D5B6A804CEAAD5496840FF3FD4FFCB34B7B26D8B6B27A75C16F8D323FEB4BA26"
|
||||||
|
"source-0026.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","D7AF2BE9C585402C3F3110821D7327938B43D9FBEF6F2743AFA77E2635A13B01"
|
||||||
|
"source-0027.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","5EEA3F79ACA2C856DE2A9EF891CFD99C43C01CDC0A22139746ACB53AC42877E0"
|
||||||
|
"source-0029.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","F962E34492069EEC738C96331B8EF2D965605DBE073C48795713143B7E1BD0B5"
|
||||||
|
"source-0030.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","19E62ECA2E6C603CF36DCBF4B1126627FA033694591532839C76E1A471D3B907"
|
||||||
|
"source-0031.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","5E8719804B8AC348EC3CA897BFBF924537550301E1CB69E6A63829F5D01D2959"
|
||||||
|
"source-0032.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","56AC0DEE211042771BAD302A74ED6DA1DAB6AE3449B97DC62314055DDE05005D"
|
||||||
|
"source-0033.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","7BC29958A7476FED88736D6194DC526CD34AE30C05B4DBD9C613700E38EC9448"
|
||||||
|
"source-0034.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","AA24D035F36DBAE6A9D1F45B111B47C8CBEC644CF403F0B2238D6B2598503076"
|
||||||
|
"source-0036.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","22E4B4AD5871EAA8649C3A83B9ED087216A15063BD316F920B77FE631CD8601D"
|
||||||
|
"source-0037.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","2612B3FF98320AC4EEA29159C3A17AE77EF05E3532BFEB8E68DEC813AB55B83B"
|
||||||
|
"source-0038.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","650576F96F3D50590F7992757E60F1293C916AE0014DD353005D4EC08431D96A"
|
||||||
|
"source-0039.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","03CD98EC8E8AE9E92F5223BF47BCE2033BE5F8D9BD8B5644A224796C0C6E45D9"
|
||||||
|
"source-0040.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","9204C3C038A988C010CCA0E48DE167C436D6775D7BE0B502F0095F48966F283B"
|
||||||
|
"source-0041.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","0B8E19153E9D0084701731AF1ADA29F99054016CD893CE77110983AC25093CD4"
|
||||||
|
"source-0042.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","0F3B53298A3CFBA92EEDC4B49E4A642CF0755EC999720480C18ACFDD2D467A5B"
|
||||||
|
"source-0043.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","AAC95DDD9A62B94234254106D6EE37E95E3FD4227B0AD94E327E025C8282C660"
|
||||||
|
"source-0044.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","9FA7D5F8CA5E1A9344A9700EA3605035080D635C4E225D4EF9350E16CD5B518B"
|
||||||
|
"source-0045.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","1A28F0D2D3C53BE9BEC7C016307327C5C222FF867F43AE5420A755DFA32D396B"
|
||||||
|
"source-0046.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","8B26E8E5DDD8101924198D6AA16D37DB5DFCA2864C8F4EA1B7C251AEDA06CD4D"
|
||||||
|
"source-0047.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","C6EFA356369C7D06DF90817ACE6D971D9944423712391699477640DDE2A88D53"
|
||||||
|
"source-0048.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","5AC3D9D8EF5BAA99E00849BFD0CA2354ACBE2CE4B4895C37A24D625670F6B133"
|
||||||
|
"source-0049.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","68272BD50AA263E08987ED982E3DDDB6132D8FEED0D4E2C57820B8EE5A43C904"
|
||||||
|
"source-0050.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","994D122515FA8FD4AA48378D0B8760432CA346518A01415EDF5C4F8DF91E0A71"
|
||||||
|
"source-0051.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","83A80E0285027BEB367A3C04237AEE0350A929D871ADF151D3E7020B09265469"
|
||||||
|
"source-0053.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","B7A496F928F2005125AEB6A86BA74F96C6968F50831535CE9FE2E61DA94ED68C"
|
||||||
|
"source-0054.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","D172BE258326A1E36A65229F589A2653D3D7CEEBC6F71C9404892D9CE8A2EE5F"
|
||||||
|
"source-0055.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","6C052A3B028D375C0AF2F27A69375617BE0932A1767FC6659EE47DAE79B1D73D"
|
||||||
|
"source-0056.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","2D838798D2A29D88A3CF9D520A6850A6EEEE3103E6F9EA8B56C7171D50AF0AC0"
|
||||||
|
"source-0057.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","22B15721ECAD00B795D6A8E6586A21C414F87F54C8711AD2DD121ECF70E6BC05"
|
||||||
|
"source-0058.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","2ED89B5B5FC7721F626E70DBDB32A951AC2BA1CF2CA98855008056389ED5DBB1"
|
||||||
|
"source-0059.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","6B38514847036D64D3ADEA60827E0106F91453874E26F23A0E346ABD69CD9168"
|
||||||
|
"source-0060.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","4BF30610DB2455E4609F38AF2A3119E3BE6C158D249CAA5CB2B0CECDE3572E6F"
|
||||||
|
"source-0061.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","BF9B620D380262C17720B9F79C8F4710940F3E7A694DC1487582747C43A6EFBF"
|
||||||
|
"source-0062.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","C6ED208D19EE59675819B9EB1101437AF9F09B297826545B63D837B28476938B"
|
||||||
|
"source-0063.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","C3EC9168E732EF52BB81FEF37445FD7EF80BF8A9132E14E921C88BEE7A622FDC"
|
||||||
|
"source-0064.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","E321E0A62A8EF8394814800348635ED7409F8C29BBB77982BB605B0E40283191"
|
||||||
|
"source-0065.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","59522EBF2D08EE7B4B73E8CD4F0DDDCAA54E6BCBADBDAD82E47CC4043EE1E0A6"
|
||||||
|
"source-0066.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","ED460B2F82C49A91E61B8F4E962BC7F3BD409D8BDE8F8A409558F1E16344A54C"
|
||||||
|
"source-0067.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","C3F967DFE2AF1740389216CC4A4FFAB36EEA0649D6D8D97B7C830128952C30D1"
|
||||||
|
"source-0068.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","ACBCAFE4E2C64CA0B933D560784F6F7BB1BE777737AA912780847BA7951A91E9"
|
||||||
|
"source-0069.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","0C1257176B0BF385322498F99C38877E79AA6DBAB2282E4CA85B27123456DBDE"
|
||||||
|
"source-0070.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","BE5E9E2ED02A38A2A5FAA5F458A226103E44BB1E10E661F8471DF87497BA6193"
|
||||||
|
"source-0071.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","CCFD47992D6871A0D1A3C3D0FABB5469716A84BE685607D1F48D3F59D15C0B59"
|
||||||
|
"source-0072.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","D99F7CFC5C845B8A9240D76442B1C8290BB884C25A65C292E661B3C038E53595"
|
||||||
|
"source-0074.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","7100543975AFBC048D1D3DA5F0FA3082C238D572D1C5017B3D66FD51FE9FC0A9"
|
||||||
|
"source-0075.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","ED16C384412EEBA6CEB8AD6EEB5E65636E45335442C7B3AEDDF4B1D274378E93"
|
||||||
|
"source-0076.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","534E8133938434DEB4B0F66479C5777C1BAC9BD7845F6AAF7976ADC22B84DBE8"
|
||||||
|
"source-0077.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","B2AA6B11A49B4860D109B32930A9CC4A1E1595C760FF76F2623F55989449974D"
|
||||||
|
"source-0078.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","574A3D111E5B2763D573D109E0057FE10C89BB31350003D98CF83A597468CDBD"
|
||||||
|
"source-0079.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","6211DC9082F415546E5A302783FB377AE4F2E9F3DC2C2512AC052B6B197A36F5"
|
||||||
|
"source-0080.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","88EED7D7E099EBC65366EC7786172E4AAB3F508656BE1C64E7DC6A5262E7674C"
|
||||||
|
"source-0081.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","D7CC897DC2479C84B7B1BBA7BAF47FC7889FEAFD1036E1859574ADB409130829"
|
||||||
|
"source-0082.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","FF5D172A737374956F63F38A26B9AAF64BDAE499291AA6AC0CF26B2570ECC94F"
|
||||||
|
"source-0083.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","A448B38E9A54DE558EE9C8FDDE4C9633035C8654D023C7E9D3ABF7586F039F61"
|
||||||
|
"source-0084.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","6609016A6D620744BBBA52562F5CC6BA68007BD68332218880D648B57ABCAE53"
|
||||||
|
"source-0085.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","F17FA2DBEFA4FFF9518249E112C79D1087661A5EF3A58923DCEBECB38A1C66E8"
|
||||||
|
"source-0086.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","CFBE9CEDCA5E52EE3E43C0D860F7D3126743B2E94677B6F2DE85E3726C102825"
|
||||||
|
"source-0087.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","B1D7148DDE7ECC3F01F139633BFC779EBAE93620870435F5837B294DF275803A"
|
||||||
|
"source-0088.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","4FB32F8097D32CA110552BE58782D1F179A4D23FCFDA43B6BAEC4FE0FAAE531F"
|
||||||
|
"source-0089.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","ABD98873D82E3035420F242BFDD407637FAE5C974AAEF045C2F2679811302616"
|
||||||
|
"source-0090.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","B34431BC7D30426ECB96B662BD4765B689B9BAF1DA9C30B31A0DEF68575A0FF8"
|
||||||
|
"source-0091.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","15E62439999BF71C70B3644C69FE86E00B9AC03BFFD3444212FAEBE1052469F5"
|
||||||
|
"source-0092.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","DC78F48FA293BABE2A2D94537F30177BF0C084FFB5B50E575AB50E44D4D717DA"
|
||||||
|
"source-0094.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","8099D96A67B58BC19E77F51F0457E80168D4C3CBE0B79B23F0E781FF7785F67E"
|
||||||
|
"source-0095.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","7F7992CB1E792BC576BBD5B20B130677632CD44F6060D484A02336492E83A3C3"
|
||||||
|
"source-0096.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","596DB4EDD92725EBDAC04ECDB729FCA186B12E39769A4685F61F4121FD2BB694"
|
||||||
|
"source-0097.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","C3D2DB743ED28D3ACD6F2DF785106E0A9888E85CB33F69A76E7580EBCE7281FE"
|
||||||
|
"source-0098.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","2759ED2BB2AF7FF853A68B8E5560960CE1842A2ECBFA3B0CA769074DB20E3829"
|
||||||
|
"source-0099.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","0E1D5A1943C0FFABC7C732D951F9AD6FCFE123C05E50E26135B732A1DFA1C18C"
|
||||||
|
"source-0100.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","CFE999149CDCB6173F71840267E2BA5A36156629CEAF99D50B2E418260AA2153"
|
||||||
|
"source-0102.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","513D086B680B4E32918A18524D83D0EEAE926B4AB99559A182AAA8E632E47929"
|
||||||
|
"source-0103.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","A65F108E7C9DB797544430354AB865CA9416AD2911F6F63E595E63FF91E008F9"
|
||||||
|
"source-0104.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","B6C9ABA619690B1F23328F6ED31C69A9AD1817D5B43A8148102078909E179902"
|
||||||
|
"source-0105.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","2B78926AA1E6E42DC8A377D0BACFC30938D19945D0A5D1688FB92065877BC397"
|
||||||
|
"source-0106.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","31D909B21E267912C85E379E5960CFD01CEA6871BC025B3AE9538C77B782F13E"
|
||||||
|
"source-0107.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","2B32C8018EADE5DEFA550872D29E4C9C8A3AF02B61BC925FB435DEF216282A2F"
|
||||||
|
"source-0108.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","BDD050F3A5AEC5BF33054707DE15381A35FAEB782E30577AB50A1D7E63066D0E"
|
||||||
|
"source-0110.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","FC29A6E3D6F543B03DC5086710E6C005D2EDF22074CC8A7159C87468D5355F17"
|
||||||
|
"source-0111.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","0218D4054568B4C443FE921C2D8E6F3374E9C655A10DC7A621A48C318EB9A466"
|
||||||
|
"source-0112.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","72EBB93761E599565D3C812BDFDA39899C92B0426868C58D45545EAB2A37E5DB"
|
||||||
|
"source-0113.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","EDE794F1BBBF6A143D9E2257D880E33EE07E7DB08C5A1196FA00BD348616D499"
|
||||||
|
"source-0114.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","F2CFA1D7785BFABFD92D7AE481BB05D15F333B3A84781E77774F59CE8C406CA3"
|
||||||
|
"source-0115.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","113F2E535C02F09F72EDB3D9C6866C1AA0A92DE73F3D2494A7D72F4EAA994C5F"
|
||||||
|
"source-0116.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","1D141E7D56E5F5BB8983A0AC847C3FCF814B77F024A4B480B2ABC98F18A4840A"
|
||||||
|
"source-0117.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","74E7B5BE9B7D8BF619D86FE4BCA3655032E63E95E4B8BF5CB6B1715C95B5138A"
|
||||||
|
"source-0118.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","6ED798747A1895356038F8C1E5E2662F92630D25A1A3A482B70614445F405FF7"
|
||||||
|
"source-0120.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","362393B89E34C480B6AE53067E1BE0CDB035BD6A10FB90BD622FE3E1585C230B"
|
||||||
|
"source-0121.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","9A73143888DD86251C70689DBF563BE1A809F8B5027E497C5623024D117E89B6"
|
||||||
|
"source-0122.xlsx","","","SHEET_NOT_FOUND","",,"","C1FFEC2601913497A598ED8C731F772B428D6059A89906AD9AE1339CE12B6AAC"
|
||||||
|
"source-0123.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","ECE8E6491DA1F8FBC12A334AE883D877D045958F36FB30A0B2CBEC628F3C2142"
|
||||||
|
"source-0124.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","032A89D380099D929673B6F83F686E91B654D832BAC301282AC22E96FF114A9A"
|
||||||
|
"source-0125.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","5853D45EFC24752A28261946E5BAB2A26A1BDD1295322F7AA1E6373976DF7E34"
|
||||||
|
"source-0126.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","88041DDE1F7E8411F4934738DFB3E20B30E769DB89520AB2982ADA72711F3AA9"
|
||||||
|
"source-0127.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","6391D1EEF934A4279875F2ED6C942E988995DC80E719DFE51E330C3628A92716"
|
||||||
|
"source-0129.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","D27440A199F781AF988A1D14BEA60CBDDE363B80DE4C4BC88543614C845951A5"
|
||||||
|
"source-0130.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","C9D9E56D3F51AD8D70265F367FBAB4AF48DDA31825E68BDCAB785FB33CC59046"
|
||||||
|
"source-0131.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","AE6D3956FC2EB1E8C4448638F20E47E6558E530D19CD6B1E00738EE11B3E5D98"
|
||||||
|
"source-0132.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","1F52993E37BAA7634248FA6C89215DEFE08A1357AF554FE9D4FA54853FF150FC"
|
||||||
|
"source-0133.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","EDD189ADABE78F0E0CD35D6B566E28232C9230DADAB91E00C3D9A7EF5ED0D559"
|
||||||
|
"source-0134.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","FB9EB6C311BB2D8FFD1505515DAF230041BF17935A2C77886853CE7531A73BE1"
|
||||||
|
"source-0135.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","0AC6D4C6590688F3CD7C80178E83CF9F33267DBC4F984AC39A9878064952AB06"
|
||||||
|
"source-0136.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","8EDDB15D53361B21AE22084405558B1EEFFF2AB87A58E2C495B44CEC3563666C"
|
||||||
|
"source-0137.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","14E0D757F490A3D6AEB4810BC34209FB96F7170273786D7F94F9D5EBCA502F95"
|
||||||
|
"source-0138.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","058C34DC42DCCCCBB91523C3572F8690B4DDE226B5BD100526E172E50ABC0D24"
|
||||||
|
"source-0139.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","3D51E207FE8FB925D1771E4ECF613D4895A556D45FED57B93E583AB0D2BABF31"
|
||||||
|
"source-0140.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","5C7666C397C18FCE173E751F17C32DF331C343F891D0855F29943C1568CFE0CC"
|
||||||
|
"source-0141.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","A2E8AC2E7E456290A9C32A2B98A835C7030E293A1F4E8CFF28A89A3429AB2B32"
|
||||||
|
"source-0142.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","04FFDB2BB5CB4E9A8287BEFB730251094330313DC12ACB630BABF465231C57BE"
|
||||||
|
"source-0143.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","73B1FF45373FEEC8254A2F1921684635B3157870D84C02D97F10D9D936D4FFA4"
|
||||||
|
"source-0144.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","DCC75631518A738FED6A026387DC5EA835E97AE38B3C613310F980D721D4FA21"
|
||||||
|
"source-0145.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","8671CD26610C700E4508C9D6B96CBFD822FBB326622EFAE8776032E3C2D512A2"
|
||||||
|
"source-0146.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","A95FC3902BA956E5B01D80419740EA47B5FF28A18ED7EC7DDFC8B4CD83204956"
|
||||||
|
"source-0147.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","07A92B9570D275034C945D516530FF7A7B099F7B95614FCC5F8B1A93627F9972"
|
||||||
|
"source-0148.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","0C9451087D7BA8FC6B2B32842CBC6CBD3693DCB7D02F65EBA3A7E652A2AD8B3B"
|
||||||
|
"source-0149.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","AB647149DB8B76A7F74997EE8443AA70FDC3EBEA902D086618E63DE0FFDF6043"
|
||||||
|
"source-0150.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","D3F4F23ECFBB62C02CF9322DDC8703016FFCD7540FFAC9A5616A821AA384843B"
|
||||||
|
"source-0151.xlsx","Plant3D","2","AMBIGUOUS_RECORD","Плагин","Дата","Количество запусков","129EB34B94ACE3F15434F6251495B1AE60C910D35E90BCBBAB9BE83D27290301"
|
||||||
|
@@ -0,0 +1,152 @@
|
|||||||
|
"SourceId","SHA256","HasPlant3DSheet","ActualSheetName","RowCount","ColumnCount","Headers","ParseResult","RejectedRows"
|
||||||
|
"source-0001.xlsx","A15A619FCBD036043644B235D1B5116C019838A42091CA6A451CD82DFCC41749","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0002.xlsx","A5B3F1451F88798417B3621F6BC6690BC0B1BA94E8F69B75BB4C6CB961B29BFB","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0003.xlsx","1DAA47089E28D62C9DF05541266ECEF512AACF87248BDA4576F42346EA6BE543","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0004.xlsx","B5AA0708B2C97B8F6AA13E4DA09C9FC4B205BB2A44D6A6993E7DB0ED26F9CEA5","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0005.xlsx","310124BF67ED7185513C834FBF3BC96A0AB243CF5114A41E2F78CE383D04F15F","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0006.xlsx","484B6D563FFC782565DE9FE7AFBA18406017627D192CA2C3789EF8CEA63E20CE","False","","0","0","","SHEET_NOT_FOUND","1"
|
||||||
|
"source-0007.xlsx","E5C9642AEA336BB0040B2FA290AAFD723AB6CE6F04519C5A003AAB927270F6C3","False","","0","0","","SHEET_NOT_FOUND","1"
|
||||||
|
"source-0008.xlsx","0323A416C468D838726E5792D887A7F9A381B2A1C13C65A340C57D472CCD8441","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0009.xlsx","3CE17A1F2C385F2D3E8FC288D4342026FA329894C2FFD292521A94F8ECEC5FE8","True","Plant3D","6","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0010.xlsx","A28C34A53E3D3342A20E013F1C8ECB0535369386C8A384F72DC2FB8A8EE22028","True","Plant3D","414","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0011.xlsx","F1B81195DA589C392940461EFFB4241A1531B1DA70BFC547896366AB94626473","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0012.xlsx","2C3506BA50204A3E8A1E42E0B466587103F80C8F8BEE692F27ED1FD2A7977E43","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0013.xlsx","BF74975CF82BB0CEB2CE6BF005A679BE2514D33A9E7F145DFCF91ED261A875B6","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0014.xlsx","7D2AE6636424016E60AF73B6826F4D9992A0A20356593C7D5D1034E3EBA47173","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0015.xlsx","D60671EADF93813991C84959F6C3E9CFEEB60F8F44522A6DB27FE64C0CCD8B7A","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0016.xlsx","A2B3F6E746DF732AA7FF721BCEE5A4C44442FC74851AE8ECA112B19D87671774","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0017.xlsx","B9430EC9C2BD7E6231F1A27390F63241111844956B6A32C01FADA6E8C0CB33AA","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0018.xlsx","1945DBF7EDD39F7F66605465E72C61FD405A1196D66DEA146E49D04DB8C2BF39","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0019.xlsx","1432526CC6D04A23B0AFFD7F0D7758D95CBC801ECC80CC868100A9849B8DFA05","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0020.xlsx","EF46F7969E767613029508068B0389A70F78B7781DEB1B1D5B57A55368CE14BF","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0021.xlsx","2661112A136177954233F1D2AAD0ADA66DFBF0F8BC4FDF7845DF8B4C4604F431","True","Plant3D",,"0","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0022.xlsx","32637F9E79E4DD99E894B0920945135A3CB17A140A82596E1D02C9309F73FC39","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0023.xlsx","9E4660630442D118F09FCB11DBE975E25433197A8A5DFB12CC612C153E0F725E","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0024.xlsx","2BBF8C9E52E7B98ACE642BB19D16F3E3CC2F376E39A05E53BF992FF9050B8A1E","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0025.xlsx","A1325DC1797468286A02EDE3733DF8219B254E916154D31F34F4B461B6D2BC80","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0026.xlsx","FB1E886E31C2FB3D52CA0DBBD9E74CD091938B57E7C6F6FCF4966A7FE704392C","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0027.xlsx","C4FEC6A05FB2720D6C4341B8735C85900A8AA15805C5CE245E551C5FFA4EEBF8","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0028.xlsx","66B28C7AB727BE7F77491313B75FB62F498C39500DE1CFB41C54A78EB184DFA1","True","Plant3D","56","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0029.xlsx","5F8D42AD0580CFD7F4CB407B45A1B7E4D4F26D9A04A2ADF7DDA7028499BD2146","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0030.xlsx","F512D38F97E6848FFA80D30D226E8E79B6422AE96096D3B137A8D18D9C7283DD","True","Plant3D","90","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0031.xlsx","670D5DA7859B4FAE24EB4F5929939786865CD2B32C7FE829B8C553A74AAF82F8","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0032.xlsx","F08A03A625EBE9807A89BDD9357C92A1475AE7F19A5A3B488B3E8D7356A0D981","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0033.xlsx","0532B42C2AB5F10B2900A137D8C72745DACDE4EDF8C9612628E07CD388C9FC92","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0034.xlsx","205F5F22C7E7DD5C9F04B9CA730BC3E79A23A561E280838C62AC4B79741462D5","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0035.xlsx","7A93BB9B4F04A534D1ABE7B36118288A5B6BA799E829B75B73C8DECAAD78D22C","True","Plant3D","252","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0036.xlsx","AB6211135C2391355AEB089B4893A2485869B94D9D4AFFE73936ED59C458676D","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0037.xlsx","08EFD4B8B47E13F5F7F1621B884EE7D75CA060C28F7D6521C0D5BC4EABC79A32","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0038.xlsx","514E2773029F9D5F827A3CDE7EC28F1F466C98ACBAABD65729FE69CE586DE0A8","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0039.xlsx","C199078B83D9FE0D78DF631A1534B6308CE801E4CE1AB61404BE33F039C728F6","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0040.xlsx","C7BF9E922FF6813037E20C4AFF1B37FA6CEFB275F628BC15E5CFAC8DF374F89E","True","Plant3D","3","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0041.xlsx","BE31C9D8AC380F283989D5BA048ECB803111AB9599B8E2698834B5B4891E623C","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0042.xlsx","2865FF71486B4BD98B0B6B30D92E05F21E483DC71C52C7D77C00760D889CDDB4","True","Plant3D","586","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0043.xlsx","3F73CDB5FB6F42172E1D23AC7B63EAB3764E8A97A6000B7D3678F896CBDD58BF","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0044.xlsx","FDD351196C3D124CCA31AFDBEF582DCBFE76C88E4119CF3601BB7D1D0B9EAAFE","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0045.xlsx","7DA92F660D6F73EC0333B4E637819DB88ADC6E40A7D2E2E9D780D1E7851D4025","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0046.xlsx","EF3485449D9F5CEF104B14FE4D16BFDC3A27199C6117732D15CFC994F361F32F","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0047.xlsx","170D835A968A0590ACEA2909AE9DD204A8A7B2B01FD4254FBFD30F7216B2D4C4","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0048.xlsx","AAC46741C97CA9D5DBBADA8815D0D894F99F37F1CF6CD0FF6E2D1F090D3AD920","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0049.xlsx","F49CD86C04D7CFDA8F1FE0FB6131F9F28A86916A6C9012D54B116E9F272C8ABE","True","Plant3D","734","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0050.xlsx","A024F33FD3CD408C7FC62C59D6511F2FB8CA257DF5872A3C793875AD700F0623","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0051.xlsx","63FC0734C4B58165B3C53E06320ACC86A8D9B11F1B71EE4796071E462C291794","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0052.xlsx","170D835A968A0590ACEA2909AE9DD204A8A7B2B01FD4254FBFD30F7216B2D4C4","UNKNOWN_DUPLICATE","","0","0","","DUPLICATE_WORKBOOK","0"
|
||||||
|
"source-0053.xlsx","86AF67FAC7778F3EAEBF51BCF0C643387CCBFADA9020D48B0C0B7403E52E45C4","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0054.xlsx","76EDCFF3616F370F7EBAF4917EB430B9C606DCAC88B2782A11511B725ED30E84","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0055.xlsx","1C1116CDE1D4D33F5B5C03710999EB74D546E9FD21780DF4F8BFA51F7683FFD1","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0056.xlsx","CBAA90125E90F981FC9C9E7C1866C4D7A4AC80020D02B939E3010BA76D5889A5","True","Plant3D","25","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0057.xlsx","F50FF129D9F408BD431DC7D9997F675037E3822ED0A2F3EEDDDC37D2E783A2C2","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0058.xlsx","6B378A5C23A90C23762B9257C36E5DFC6357A7A924E8A435BFA97CD438E94B66","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0059.xlsx","E4736511A4CE16692ADCF5DF17C006A0CA6BD10E135DFFC4770EA1CCA1FB9EF0","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0060.xlsx","DCE700252D4065DF7A03B22FED55E36D75B468DA6207439E968DAEFDB05270F8","True","Plant3D","895","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0061.xlsx","F1221EBEAA1FAEFFCCC41A921F55378B1E301806DE862A71A30EC101B37A74E9","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0062.xlsx","7727E99AC47171CDA1F590B2E6380BC96F7DED676AA335637CE1436612B52D56","True","Plant3D","460","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0063.xlsx","CA8F71B9B2ECF4B27B7B581E3E4BA770873B1E73EEEFEB538ED441C5C8757A0B","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0064.xlsx","C7A1E4C8CB9CB27D05C62D89133A40665F791484431B192A73F59B8F9A6DB29E","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0065.xlsx","89A2AD33216311E5982DE7D311A4B7BBA5F9120B74B3F45EE480512BDACA650B","True","Plant3D","237","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0066.xlsx","AAEA49E5B294B77A9C1ABD2530E84BCE3B5814CEAA8D43638D921D03ADB0B3D7","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0067.xlsx","23AD7BE9E3CD38A6141171BC7848CA024AD9DDEA1613719781F8E4F0A695A4EB","True","Plant3D","117","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0068.xlsx","ADE70DE40D2ECBBDF6C92CAFAC598A4E79FB1EF4B42B7FD29B86358EDFB882FB","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0069.xlsx","9F995F5F40ABAD9FA72913BD8CD66D4D94252A247ABA1B6AAF1F618C02CC8807","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0070.xlsx","954F040E98D6D0AB8DA5E3D9226C2F2DDC1320CFA25FA84355346406E89A5562","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0071.xlsx","861D3B078EE1520FAC14F8BAB765C804DA233545B46C548EACC0894FED45CECF","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0072.xlsx","7CC2D143DCDA82A368F478D246086934AE20BC21B8EBCD19B17488D6A1B5C9DA","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0073.xlsx","658B087B7CDB15130678A5F58E4FA1B1FA5688457FA2FA03DFA7A218D3EA0CCC","True","Plant3D",,"0","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0074.xlsx","D8039752750039DD7A8DA647C21087A12944F4ACDCD636D27BD8624D86375125","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0075.xlsx","CC9C45987C6DA9646FC4FD771F8D8B6C2F3F466C609203C2AAE31C1AD79C595B","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0076.xlsx","9FE880A33CA691260B76A025145339D1757B8295942323DC1A24020B9D2E1BE1","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0077.xlsx","69233E373BA94FF1D0F5BEBAE67880BD34BA873992875344E1458254B64B9E8A","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0078.xlsx","D7C5B3583FA52CF6D4DDB4B8D673BE12ECFA7C18C40CED86679D691E3D6E32B6","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0079.xlsx","EFD4FC75BDED4E45A774945511D527F71433C58EC86C4F20275AC2D97CE7AAA1","True","Plant3D","697","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0080.xlsx","222E65CCAB8CA101B3DA836BB2D87FBC77A46B309066270A5A13D48C5FDC8E00","True","Plant3D","287","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0081.xlsx","35044B7D3E03E7C67E7C04AA532E307522226A4CE7D50A51107B4CC2B7AE3117","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0082.xlsx","BF54E9EC75A0716BC4AD71E310AC8558E3EA7FF4FF1AE7616FB6C546F3D05D75","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0083.xlsx","C2D6E13731016E523F582D065480F385E3D8EFC9379C6CB20A8FEC288330BD33","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0084.xlsx","ED0BC02534ECB9636BE0C2268926942C8DEB9ADDC75823CF6A1E241E188E96DF","True","Plant3D","1860","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0085.xlsx","30B54423173405FB2179C2F0C1532DEF28A292A7E3249C5483CED353F692691A","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0086.xlsx","BE7148B01F6BF466650D93ED1A1CFF736AFC5DF43567FA4D62C319ED0739863B","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0087.xlsx","27EA9A83CEDB02328F8E99D914CAB7EC9325313458D36678FC14994F028A7C66","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0088.xlsx","35C2F37E1453CC52B85BFAA335695931D469844C660CDBE8356FF60FA5EDC094","True","Plant3D","152","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0089.xlsx","FF6B2808D71FD697AC2AD83400152E258EE428FF50CF00D22915AE70CA4F2D19","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0090.xlsx","4C5AB590CDC6F764326B8DCE845E0DBFB51C9A8710DCA65671173A06B1F4C8BE","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0091.xlsx","9A68D1C2B05E2A1AE7DC08F56A203F12094064DC90CF4A753E6B024944058953","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0092.xlsx","AA4CF707135416550D390D59275F4EF96597CA413553ED998BAD249266C1BB0C","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0093.xlsx","6E9634C35B174D2CA2BF67E7E5D5A5D322E8E33366231D419927335D67118158","True","Plant3D","60","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0094.xlsx","7826F33C15EA6164E46A9BB762DDA073ED113B918F81E3BFF9BACBD4F9E9862A","True","Plant3D","810","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0095.xlsx","4FE1B8234D58BB533E118659489AD5497E17EC58C935FB467B78FE00AE868782","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0096.xlsx","AC2B780B38BBF7B0BDFC6F3134633536A4A64DB3A2C71F010079A99ABC698EBF","True","Plant3D","3","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0097.xlsx","FF6A99D2F4042CDEDC0D8AB2863FCA5B74128D9CD39A6FF42E4DCA3CFC8CF62B","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0098.xlsx","CFDF4380ABFF2899C15963155D1AC991CFDC2E0F6F5615191DC983F7CE8E3708","True","Plant3D","91","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0099.xlsx","ACF37ECD1F508F39F352C3112113F6214741032F642012233F7C0EB71D57FAE3","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0100.xlsx","BE19C25F151B4525E0058F7C974B250AFEC651585F71A2B0BC9A28C6D2639521","True","Plant3D","1039","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0101.xlsx","5F8D42AD0580CFD7F4CB407B45A1B7E4D4F26D9A04A2ADF7DDA7028499BD2146","UNKNOWN_DUPLICATE","","0","0","","DUPLICATE_WORKBOOK","0"
|
||||||
|
"source-0102.xlsx","219ACB4310303A5EE9E5A825998AF9012AD80F597F693B730583ACEC5856B935","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0103.xlsx","96074CB9DECE06172FD88185CF379830582046A83C7405AD7B41D7F6196BD0C0","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0104.xlsx","16D424D7B51535AFF74B02F1FAA113E35A501E7A5C6E991382853FAB0F14AB02","True","Plant3D","74","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0105.xlsx","2BD63E06782C45CAF3A77C301F980ABE6421C098E549DDD639918894987CFD4B","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0106.xlsx","23F20D79B82DA3BE0E979AB55939B308F5CE35264C687A13FAF0B0EFA31912C9","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0107.xlsx","1843EDAF7DBFB71036D62B9C80DBC256199969EF64B1881E9E5A051B1EADEDD5","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0108.xlsx","BE04A1D538CB18E1F909E0F0F911AC7D8DE0C614FD107E5F9209E843F2AE1311","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0109.xlsx","205F5F22C7E7DD5C9F04B9CA730BC3E79A23A561E280838C62AC4B79741462D5","UNKNOWN_DUPLICATE","","0","0","","DUPLICATE_WORKBOOK","0"
|
||||||
|
"source-0110.xlsx","1A04C1D1FEC0D6DE24AE5B59A303FAC8617D6DCB7C79BA61F493797E249F6BE7","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0111.xlsx","69D6ECE741A1CE49B9188F9191F04DD49B8FB1D36AE79492D302DAF8BC55DE0D","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0112.xlsx","67E4B2F304BD98BC953742C319AD9FDC60E1DDF809317D264AB92B5DD496D153","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0113.xlsx","5207B2F0DC0DB9C5399A32A1505310665180EC74D6A26015475986DCBF379563","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0114.xlsx","BB0EA311890606D735E090E3CC009275EE1EA0430A861A36E1B5B887619FB9BB","True","Plant3D","107","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0115.xlsx","90AF2345A620F5735BA47A7B0A6355CF1FC6ACD508DD566123B20F7FD3E40BCF","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0116.xlsx","B5B54A5399281FE2F6439D499496EF27B110BBB1DE8008428F80BD5E3FE9B6E7","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0117.xlsx","777C7A38D2F97998426FB4E6A39AA7C4ADA7343D48C00427DEA58FBA915B3D67","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0118.xlsx","AC66A34DA4BA02E8452B1CA0CDCFF381AA7F56C2ECF206C6D3E39DC49DFD8B86","True","Plant3D","3","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0119.xlsx","630481E3722EF0E4F271C812FCB686BFEC679EC2A90B1CE60929FA178276B746","True","Plant3D","703","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0120.xlsx","217E8F2CE5C0E50FFECDFDC69C99629EFF86F8F1C5820B804472CCBB96C83693","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0121.xlsx","606068897D6B8B66ABABDF0F123679A46864CCD8D3D8F7A64C5DB8242B910AA7","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0122.xlsx","775B72ABA7A5F3277F857C4431A9795192451621DDDA9E568952EE5FC4B818E2","False","","0","0","","SHEET_NOT_FOUND","1"
|
||||||
|
"source-0123.xlsx","77C0DBDA49BCF2A61E1E8661FE56069B13F5CD76372B60CCBCB4FED4D9FCC300","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0124.xlsx","11E3CB994067C2944C72783818094A3B0070E9B20F16E65E4DF5EEC4BC7D4BEF","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0125.xlsx","A8D15E45344B4F9914F28EB471C74B90F4C8AB09F588C5932ADEC6A69EF3A1F1","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0126.xlsx","973258780339702C9EAF6E67B69C8835B5585E00D21764598B619A8490EF6334","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0127.xlsx","B276743CAB8202E42B5E6578DCFD33FAC968CC809EF258D3D083D1858D42FF9A","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0128.xlsx","88200AC6044F16B2B18F5448F6B4BC5BAF6E1F9EE5446E1FD30EB321AC2B8BDC","True","Plant3D","3128","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","0"
|
||||||
|
"source-0129.xlsx","78A70F71CF77C11855ADA80A805FAD5F04FF8B5D55516FC6565C1FB86E46D4D5","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0130.xlsx","D934BC7DB6C68A6458FFFE801C61B622BDCB10979CCB3B22431867A346DF3559","True","Plant3D","65","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0131.xlsx","E0192943F2454E18F72092D794D3E73A55536B7757269638BAD922BBF7E58DCF","True","Plant3D","1027","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0132.xlsx","10EB6F3BB853E29C25D5C7781F7DBE32AB66DEFCF74F33A0E041326DB3E058C1","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0133.xlsx","013EBC9D96D0A2330A708C04C715A97830337DF0E85A13A46B9CEB46B641A662","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0134.xlsx","480B287CB70F44135B538D406934BC84D48A9907EAC15BCDBE566606F9459814","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0135.xlsx","6213EE80A8303E74E0C5D8D0706F4BF18BA8C66CF7D521269D83342DC129456C","True","Plant3D","1970","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0136.xlsx","F2351A9EE055766BA23389341EDE4F646EF93A6F4EC5D643FABDC938D6856741","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0137.xlsx","7BF721DA2ACE12EEBEAE8B810BB36E1609A716312D57123AB8DE5E3AB88A2C67","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0138.xlsx","B5EFA1E2A03AD1E58DE3A8BD8E654DAE2D6D3BEE25ABD83A1F2DAAA7D1ACBBA0","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0139.xlsx","D01E5620808DC870F30C7A2F8FBB142989BC64B47ACA75C33EB8891261210D61","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0140.xlsx","1E4BA218B03A56523525B6B62FCFA2381CC6C142018426EFB8BC12FD8B5B248E","True","Plant3D","499","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0141.xlsx","B39C734C901C75D4E297A7F1044068B28FA2459A2ECD3518BB9FE4B325052344","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0142.xlsx","A69931EA29521E1AB9CE9EEFAD29E07687B57A6B35CBC0023FD8CEAB706BF2AA","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0143.xlsx","6BF892D6DB59C80850AD3FD316CBC6B6BAAB93AD54D1B7273C525C26141405EE","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0144.xlsx","4940E6C9CBB4C3B8D327F463A3EADA1FEBD622E8065D038D97364CA99D1D2D7F","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0145.xlsx","106F64274F9146D16FC5915A19FE112C287CB91FBE1F466C25D535746A3398AE","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0146.xlsx","EFF26E58F20FCEE544B341129C608788C6A3D96C1BDCD22AF34B6D10BE220492","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0147.xlsx","55846ECDE3A730B781564A2059D3DAC56536EC3AAEF69B09BB07178AC8720212","True","Plant3D","181","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0148.xlsx","94278E1422D937D2C6D365036C35732C5D9C24BF70AB51ED78606668D848AB9D","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0149.xlsx","85B5D8D2537326FA82CFCBA6158AE0F852E0FB7DA4D342C1507CEC4F233D9681","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0150.xlsx","CF4DB120F80B11598077A842CD458703C2938D010C773D5A5C6E41AE707950C3","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
"source-0151.xlsx","F6DE7BCCBCC3B6B4CEC6FA81F0C5F17DE7E0725E8AE7BF6384798429C431A38D","True","Plant3D","2","6","Файл;Пользователь;Плагин;Дата;Количество запусков;Номер проекта","PARSED","1"
|
||||||
|
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"XlsxFound": 151,
|
||||||
|
"TemporaryIgnored": 0,
|
||||||
|
"Plant3DSheets": 148,
|
||||||
|
"CanonicalPlant3DSheets": 145,
|
||||||
|
"WithoutPlant3D": 3,
|
||||||
|
"UniqueWorkbooks": 148,
|
||||||
|
"DuplicateWorkbooks": 3,
|
||||||
|
"RowsExamined": 16710,
|
||||||
|
"RowsWithValidPlugin": 16710,
|
||||||
|
"RowsWithValidDate": 16574,
|
||||||
|
"RowsWithValidLaunchCount": 16574,
|
||||||
|
"ValidAggregateRows": 16574,
|
||||||
|
"RejectedRows": 139,
|
||||||
|
"TotalLaunches": 227974,
|
||||||
|
"UniquePlugins": 25,
|
||||||
|
"DateRange": "2024-06-13 .. 2026-07-30",
|
||||||
|
"SourceModified": "NO",
|
||||||
|
"ComputerFieldAvailable": false,
|
||||||
|
"ExplicitComputerPropertyHits": 0
|
||||||
|
}
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
param(
|
||||||
|
[string]$SourceRoot = 'C:\dev\TEMP\CheckPlugin',
|
||||||
|
[string]$SheetName = 'Plant3D',
|
||||||
|
[string]$OutputDirectory = 'C:\dev\autodesk\migration\audits\plugin-usage-plant3d-aggregate-20260731'
|
||||||
|
)
|
||||||
|
$ErrorActionPreference='Stop'; Add-Type -AssemblyName System.IO.Compression.FileSystem
|
||||||
|
$mainNs='http://schemas.openxmlformats.org/spreadsheetml/2006/main';$relNs='http://schemas.openxmlformats.org/officeDocument/2006/relationships';$pkgNs='http://schemas.openxmlformats.org/package/2006/relationships';$utf8=New-Object Text.UTF8Encoding($false);$utf8Bom=New-Object Text.UTF8Encoding($true)
|
||||||
|
New-Item -ItemType Directory -Force -Path (Join-Path $OutputDirectory 'evidence')|Out-Null
|
||||||
|
function XmlEntry($z,$name){$e=$z.GetEntry($name.TrimStart('/'));if(!$e){return $null};$r=[IO.StreamReader]::new($e.Open());try{return [xml]$r.ReadToEnd()}finally{$r.Dispose()}}
|
||||||
|
function Col($ref){$s=([regex]::Match($ref,'^[A-Z]+')).Value;$n=0;foreach($x in $s.ToCharArray()){$n=$n*26+([int][char]$x-64)};$n}
|
||||||
|
function HNorm($v){if($null -eq $v){return ''};(($v.Trim().ToLowerInvariant())-replace '[\s_\-\.]+','')}
|
||||||
|
function PNorm($v){if($null -eq $v){return ''};(($v.Trim()-replace '(?i)\.(dll|exe)$','').Trim().ToUpperInvariant())}
|
||||||
|
function Shared($z){$x=XmlEntry $z 'xl/sharedStrings.xml';$a=[Collections.Generic.List[string]]::new();if(!$x){return $a};$n=New-Object Xml.XmlNamespaceManager($x.NameTable);$n.AddNamespace('m',$mainNs);foreach($i in $x.SelectNodes('//m:si',$n)){$a.Add((($i.SelectNodes('.//m:t',$n)|% InnerText)-join ''))};$a}
|
||||||
|
function CellText($c,$n,$ss){if(!$c){return ''};$i=$c.SelectSingleNode('./m:is',$n);if($i){return (($i.SelectNodes('.//m:t',$n)|% InnerText)-join '')};$v=$c.SelectSingleNode('./m:v',$n);if(!$v){return ''};$s=$v.InnerText;if([string]$c.t -eq 's'){$j=0;if([int]::TryParse($s,[ref]$j)-and $j-lt $ss.Count){return $ss[$j]}};$s}
|
||||||
|
function DateStyles($z){$h=[Collections.Generic.HashSet[int]]::new();14..22|%{[void]$h.Add($_)};$x=XmlEntry $z 'xl/styles.xml';if(!$x){return $h};$n=New-Object Xml.XmlNamespaceManager($x.NameTable);$n.AddNamespace('m',$mainNs);$custom=@{};foreach($f in $x.SelectNodes('//m:numFmts/m:numFmt',$n)){$custom[[int]$f.numFmtId]=[string]$f.formatCode};$i=0;foreach($xf in $x.SelectNodes('//m:cellXfs/m:xf',$n)){$id=[int]$xf.numFmtId;if(($custom.ContainsKey($id)-and $custom[$id]-match 'yy|yyyy|mm|dd|hh|ss')-or($id-ge 14-and $id-le 22)){[void]$h.Add($i)};$i++};$h}
|
||||||
|
function DateValue($text,$numeric,$style,$styles){if([string]::IsNullOrWhiteSpace($text)){return $null};if($numeric-and $styles.Contains($style)){$d=0.0;if([double]::TryParse($text,[Globalization.NumberStyles]::Float,[Globalization.CultureInfo]::InvariantCulture,[ref]$d)){return [pscustomobject]@{Date=[DateTime]::FromOADate($d);Rule='EXCEL_SERIAL_DATE'}}};$v=($text.Trim()-replace '[Tt]',' '-replace '\s+',' ');$fmts='dd.MM.yyyy HH:mm:ss','dd.MM.yyyy HH:mm','dd.MM.yyyy','yyyy-MM-dd HH:mm:ss','yyyy-MM-dd','yyyy MM dd HH:mm:ss','yyyy MM dd','dd/MM/yyyy HH:mm:ss','dd/MM/yyyy';foreach($f in $fmts){$d=[DateTime]::MinValue;if([DateTime]::TryParseExact($v,$f,[Globalization.CultureInfo]::InvariantCulture,[Globalization.DateTimeStyles]::AllowWhiteSpaces,[ref]$d)){return [pscustomobject]@{Date=$d;Rule=if($f-match 'H|s'){'TEXT_DATETIME'}else{'DATE_ONLY'}}}};$d=[DateTime]::MinValue;if([DateTime]::TryParse($v,[Globalization.CultureInfo]::GetCultureInfo('ru-RU'),[Globalization.DateTimeStyles]::AllowWhiteSpaces,[ref]$d)){return [pscustomobject]@{Date=$d;Rule=if($v-match ':'){'TEXT_DATETIME'}else{'DATE_ONLY'}}};$null}
|
||||||
|
function Sheet($z,$wanted){$w=XmlEntry $z 'xl/workbook.xml';$r=XmlEntry $z 'xl/_rels/workbook.xml.rels';$n=New-Object Xml.XmlNamespaceManager($w.NameTable);$n.AddNamespace('m',$mainNs);$n.AddNamespace('r',$relNs);$rn=New-Object Xml.XmlNamespaceManager($r.NameTable);$rn.AddNamespace('p',$pkgNs);foreach($s in $w.SelectNodes('//m:sheet',$n)){if(([string]$s.name).Trim().ToLowerInvariant() -eq $wanted.Trim().ToLowerInvariant()){$id=$s.GetAttribute('id',$relNs);$rel=$r.SelectSingleNode("//p:Relationship[@Id='$id']",$rn);$t=([string]$rel.Target).TrimStart('/');if($t-notmatch '^xl/'){$t='xl/'+$t};return [pscustomobject]@{Name=[string]$s.name;Target=$t}}};$null}
|
||||||
|
function Rows($z,$target,$ss,$styles){$x=XmlEntry $z $target;$n=New-Object Xml.XmlNamespaceManager($x.NameTable);$n.AddNamespace('m',$mainNs);$out=[Collections.Generic.List[object]]::new();foreach($row in $x.SelectNodes('//m:sheetData/m:row',$n)){$cells=@{};foreach($c in $row.SelectNodes('./m:c',$n)){$col=Col ([string]$c.r);$text=CellText $c $n $ss;$num=([string]$c.t -eq ''-or[string]$c.t-eq'n');$st=if([string]$c.s){[int]$c.s}else{0};$cells[$col]=[pscustomobject]@{Text=$text;Date=DateValue $text $num $st $styles;Formula=[string]$c.f}};$out.Add([pscustomobject]@{Number=[int]$row.r;Cells=$cells})};$out}
|
||||||
|
function C($row,$col){if($row.Cells.ContainsKey($col)){return $row.Cells[$col].Text};''}
|
||||||
|
function Header($rows){$pa=@('плагин','plugin','pluginname','module','command');$da=@('дата','date','datetime','timestamp','launchdate','usage_date');$la=@('количествозапусков','launchcount','count','usagecount','runs');foreach($row in $rows|select -First 30){$m=@{};foreach($k in $row.Cells.Keys){$m[(HNorm (C $row $k))]=[int]$k};$p=$pa|?{$m.ContainsKey($_)}|select -First 1;$d=$da|?{$m.ContainsKey($_)}|select -First 1;$l=$la|?{$m.ContainsKey($_)}|select -First 1;if($p-and$d-and$l){return [pscustomobject]@{Row=$row;Plugin=$m[$p];Date=$m[$d];Count=$m[$l];Rule='HEADER_ALIASES'}}};$null}
|
||||||
|
function Hash($p){(Get-FileHash -LiteralPath $p -Algorithm SHA256).Hash}
|
||||||
|
function RowHash($id,$row,$p,$d,$c){$s=[Security.Cryptography.SHA256]::Create();try{([BitConverter]::ToString($s.ComputeHash([Text.Encoding]::UTF8.GetBytes("$id|$row|$p|$d|$c")))-replace '-','')}finally{$s.Dispose()}}
|
||||||
|
function Csv($rows,$path,$headers){if(@($rows).Count){$rows|Export-Csv -LiteralPath $path -NoTypeInformation -Encoding UTF8}else{[IO.File]::WriteAllText($path,($headers-join ',')+"`r`n",$utf8Bom)}}
|
||||||
|
|
||||||
|
$files=@(Get-ChildItem -LiteralPath $SourceRoot -Recurse -File -Filter '*.xlsx'|? Name -notlike '~$*'|Sort FullName);$ignore=@(Get-ChildItem -LiteralPath $SourceRoot -Recurse -File -Filter '~$*.xlsx' -ErrorAction SilentlyContinue).Count;$fileRows=[Collections.Generic.List[object]]::new();$dups=[Collections.Generic.List[object]]::new();$reject=[Collections.Generic.List[object]]::new();$raw=[Collections.Generic.List[object]]::new();$idx=0;$rawRows=0;$validPlugin=0;$validDate=0;$validCount=0;$computerPropertyHits=0
|
||||||
|
$propertyNames='ComputerName','MachineName','HostName';foreach($f in $files){$z=[IO.Compression.ZipFile]::OpenRead($f.FullName);try{foreach($part in 'docProps/core.xml','docProps/custom.xml','docProps/app.xml'){$e=$z.GetEntry($part);if($e){$r=[IO.StreamReader]::new($e.Open());$text=$r.ReadToEnd();$r.Dispose();foreach($name in $propertyNames){if($text -match ('(?i)'+$name)){$computerPropertyHits++}}}}}finally{$z.Dispose()}}
|
||||||
|
$byHash=@{};foreach($f in $files){$idx++;$id='source-{0:D4}.xlsx'-f $idx;$h=Hash $f.FullName;if(!$byHash.ContainsKey($h)){$byHash[$h]=[pscustomobject]@{File=$f;Id=$id;Hash=$h;Canonical=$true}}else{$dups.Add([pscustomobject]@{SourceId=$id;CanonicalSourceId=$byHash[$h].Id;SHA256=$h;Status='DUPLICATE_WORKBOOK'})}}
|
||||||
|
$idx=0;foreach($f in $files){$idx++;$id='source-{0:D4}.xlsx'-f $idx;$h=Hash $f.FullName;$canonical=($byHash[$h].Id -eq $id);$before=Get-Item -LiteralPath $f.FullName;$plant=$false;$sheetActual='';$rowCount=0;$colCount=0;$result='DUPLICATE_WORKBOOK';$rejBefore=$reject.Count;$headerText='';if(!$canonical){$fileRows.Add([pscustomobject]@{SourceId=$id;SHA256=$h;HasPlant3DSheet='UNKNOWN_DUPLICATE';ActualSheetName='';RowCount=0;ColumnCount=0;Headers='';ParseResult='DUPLICATE_WORKBOOK';RejectedRows=0});continue};try{$z=[IO.Compression.ZipFile]::OpenRead($f.FullName);try{$sh=Sheet $z $SheetName;if(!$sh){$reject.Add([pscustomobject]@{SourceId=$id;SourceSheet='';SourceRow='';ReasonCode='SHEET_NOT_FOUND';DetectedPlugin='';DetectedDate='';DetectedLaunchCount='';RowHash=(RowHash $id 0 '' '' '')});$result='SHEET_NOT_FOUND';$fileRows.Add([pscustomobject]@{SourceId=$id;SHA256=$h;HasPlant3DSheet=$false;ActualSheetName='';RowCount=0;ColumnCount=0;Headers='';ParseResult=$result;RejectedRows=1});continue};$plant=$true;$sheetActual=$sh.Name;$ss=Shared $z;$styles=DateStyles $z;$rr=Rows $z $sh.Target $ss $styles;$rowCount=$rr.Count;$colCount=if($rr.Count){($rr|%{if($_.Cells.Count){($_.Cells.Keys|measure -Maximum).Maximum}else{0}}|measure -Maximum).Maximum}else{0};$hd=Header $rr;if(!$hd){$reject.Add([pscustomobject]@{SourceId=$id;SourceSheet=$sheetActual;SourceRow='';ReasonCode='HEADER_NOT_FOUND';DetectedPlugin='';DetectedDate='';DetectedLaunchCount='';RowHash=(RowHash $id 0 '' '' '')});$result='HEADER_NOT_FOUND';continue};$headerText=(($hd.Row.Cells.Keys|Sort|%{C $hd.Row $_})-join ';');foreach($row in $rr|? Number -gt $hd.Row.Number){$plugin=(C $row $hd.Plugin).Trim();$dateText=(C $row $hd.Date).Trim();$countText=(C $row $hd.Count).Trim();if(!$plugin-and !$dateText-and !$countText){continue};$rawRows++;$pNorm=PNorm $plugin;$di=$row.Cells[$hd.Date].Date;$num=0.0;$countOk=[double]::TryParse(($countText-replace ',','.'),[Globalization.NumberStyles]::Float,[Globalization.CultureInfo]::InvariantCulture,[ref]$num);$reason='';if(!$plugin){$reason='PLUGIN_NOT_FOUND'}else{$validPlugin++};if(!$dateText){$reason=if($reason){'AMBIGUOUS_RECORD'}else{'DATE_NOT_FOUND'}}elseif(!$di){$reason=if($reason){'AMBIGUOUS_RECORD'}else{'INVALID_DATE'}}else{$validDate++};if(!$countText){$reason=if($reason){'AMBIGUOUS_RECORD'}else{'INVALID_LAUNCH_COUNT'}}elseif(!$countOk-or [double]::IsNaN($num)-or [double]::IsInfinity($num)-or $num-lt 0-or $num-ne [math]::Truncate($num)){$reason=if($reason){'AMBIGUOUS_RECORD'}else{'INVALID_LAUNCH_COUNT'}}else{$validCount++};if($reason){$reject.Add([pscustomobject]@{SourceId=$id;SourceSheet=$sheetActual;SourceRow=$row.Number;ReasonCode=$reason;DetectedPlugin=$plugin;DetectedDateTime=$dateText;DetectedLaunchCount=$countText;RowHash=(RowHash $id $row.Number $plugin $dateText $countText)});continue};$d=$di.Date;$raw.Add([pscustomobject]@{PluginName=$plugin;PluginNameNormalized=$pNorm;UsageDate=$d.ToString('yyyy-MM-dd');UsageMonth=$d.ToString('yyyy-MM');UsageYear=$d.ToString('yyyy');LaunchCount=[int64]$num;SourceId=$id;SourceRow=$row.Number;ParseRule=$di.Rule})}}finally{$z.Dispose()};$result='PARSED'}catch{$reject.Add([pscustomobject]@{SourceId=$id;SourceSheet=$sheetActual;SourceRow='';ReasonCode='READ_ERROR';DetectedPlugin='';DetectedDateTime='';DetectedLaunchCount='';RowHash=(RowHash $id 0 '' '' '')});$result='READ_ERROR'}$after=Get-Item -LiteralPath $f.FullName;if($before.Length-ne $after.Length-or $before.LastWriteTimeUtc-ne $after.LastWriteTimeUtc-or(Hash $f.FullName)-ne $h){throw "Source modified: $id"};$fileRows.Add([pscustomobject]@{SourceId=$id;SHA256=$h;HasPlant3DSheet=$plant;ActualSheetName=$sheetActual;RowCount=$rowCount;ColumnCount=$colCount;Headers=$headerText;ParseResult=$result;RejectedRows=($reject.Count-$rejBefore)})}
|
||||||
|
|
||||||
|
$dupCandidates=@($raw|Group-Object PluginNameNormalized,UsageDate,LaunchCount|? Count -gt 1);$plugin=[Collections.Generic.List[object]]::new();foreach($g in ($raw|Group PluginNameNormalized)){$a=@($g.Group);$byDay=@($a|Group UsageDate);$byMonth=@($a|Group UsageMonth);$month=$byMonth|Sort Count -Descending|Select -First 1;$plugin.Add([pscustomobject]@{PluginName=$a[0].PluginName;PluginNameNormalized=$g.Name;RecordCount=$a.Count;TotalLaunches=(($a.LaunchCount|Measure -Sum).Sum);FirstUsage=($a.UsageDate|Sort|Select -First 1);LastUsage=($a.UsageDate|Sort|Select -Last 1);ActiveDays=($a.UsageDate|Sort -Unique).Count;ActiveMonths=($a.UsageMonth|Sort -Unique).Count;AverageLaunchesPerActiveDay=[math]::Round((($a.LaunchCount|Measure -Sum).Sum/($a.UsageDate|Sort -Unique).Count),4);MaxLaunchesPerDay=(($byDay|%{($_.Group.LaunchCount|Measure -Sum).Sum}|Measure -Maximum).Maximum);MaxUsageMonth=$month.Name;MaxMonthLaunches=(($month.Group.LaunchCount|Measure -Sum).Sum);ShareOfAllLaunches=0})};$total=(($raw.LaunchCount|Measure -Sum).Sum);$plugin|%{$_.ShareOfAllLaunches=if($total){[math]::Round($_.TotalLaunches/$total,6)}else{0}};$plugin=@($plugin|Sort PluginName|Sort TotalLaunches -Descending)
|
||||||
|
$day=@($raw|Group PluginNameNormalized,UsageDate|%{$a=$_.Group;[pscustomobject]@{PluginName=$a[0].PluginName;UsageDate=$a[0].UsageDate;LaunchCount=(($a.LaunchCount|Measure -Sum).Sum);SourceRecordCount=$a.Count}}|Sort PluginName,UsageDate);$months= @($raw.UsageMonth|Sort -Unique);$monthRows=@();foreach($g in ($raw|Group PluginNameNormalized)){ $r=[ordered]@{Плагин=$g.Group[0].PluginName};foreach($m in $months){$r[$m]= (($g.Group|? UsageMonth -eq $m|% LaunchCount|Measure -Sum).Sum)};$monthRows+=[pscustomobject]$r }
|
||||||
|
$normalized=@();$n=0;foreach($x in $raw|Sort PluginNameNormalized,UsageDate,SourceId,SourceRow){$n++;$normalized+=[pscustomobject]@{RecordId=('REC-{0:D6}'-f $n);PluginName=$x.PluginName;PluginNameNormalized=$x.PluginNameNormalized;UsageDate=$x.UsageDate;UsageMonth=$x.UsageMonth;LaunchCount=$x.LaunchCount;SourceId=$x.SourceId;SourceRow=$x.SourceRow;ParseRule=$x.ParseRule}}
|
||||||
|
$quality=[pscustomobject]@{XlsxFound=$files.Count;TemporaryIgnored=$ignore;Plant3DSheets=($files.Count-($fileRows|? ParseResult -eq 'SHEET_NOT_FOUND').Count);CanonicalPlant3DSheets=($fileRows|? HasPlant3DSheet -eq $true).Count;WithoutPlant3D=($fileRows|? ParseResult -eq 'SHEET_NOT_FOUND').Count;UniqueWorkbooks=$byHash.Count;DuplicateWorkbooks=$dups.Count;RowsExamined=$rawRows;RowsWithValidPlugin=$validPlugin;RowsWithValidDate=$validDate;RowsWithValidLaunchCount=$validCount;ValidAggregateRows=$raw.Count;RejectedRows=$reject.Count;TotalLaunches=$total;UniquePlugins=($raw.PluginNameNormalized|Sort -Unique).Count;DateRange=if($raw.Count){"$(($raw.UsageDate|Sort|Select -First 1)) .. $(($raw.UsageDate|Sort|Select -Last 1))"}else{''};SourceModified='NO';ComputerFieldAvailable=$false;ExplicitComputerPropertyHits=$computerPropertyHits}
|
||||||
|
Csv $plugin (Join-Path $OutputDirectory 'plugin-summary.csv') 'PluginName,PluginNameNormalized,RecordCount,TotalLaunches,FirstUsage,LastUsage,ActiveDays,ActiveMonths,AverageLaunchesPerActiveDay,MaxLaunchesPerDay,MaxUsageMonth,MaxMonthLaunches,ShareOfAllLaunches';Csv $day (Join-Path $OutputDirectory 'plugin-day-matrix.csv') 'PluginName,UsageDate,LaunchCount,SourceRecordCount';Csv $monthRows (Join-Path $OutputDirectory 'plugin-month-matrix.csv') 'Плагин';Csv $normalized (Join-Path $OutputDirectory 'normalized-usage-records.csv') 'RecordId,PluginName,PluginNameNormalized,UsageDate,UsageMonth,LaunchCount,SourceId,SourceRow,ParseRule';Csv $dups (Join-Path $OutputDirectory 'duplicate-workbooks.csv') 'SourceId,CanonicalSourceId,SHA256,Status';Csv $reject (Join-Path $OutputDirectory 'rejected-records.csv') 'SourceId,SourceSheet,SourceRow,ReasonCode,DetectedPlugin,DetectedDate,DetectedLaunchCount,RowHash';Csv $fileRows (Join-Path $OutputDirectory 'source-inventory.csv') 'SourceId,SHA256,HasPlant3DSheet,ActualSheetName,RowCount,ColumnCount,Headers,ParseResult,RejectedRows';[IO.File]::WriteAllText((Join-Path $OutputDirectory 'summary.json'),($quality|ConvertTo-Json -Depth 3),$utf8)
|
||||||
|
[IO.File]::WriteAllText((Join-Path $OutputDirectory 'computer-data-availability.md'),("# Computer data availability`r`n`r`nThe source workbooks do not contain an explicit computer-name column. Explicit ComputerName/MachineName/HostName properties in core, custom and app properties: "+$computerPropertyHits+". The User field is not a reliable substitute and was not used. A plugin x computer matrix cannot be built from this XLSX set without an additional source: MachineName log, computer name in workbook name, explicit workbook property, User-to-computer mapping, or the source database."),$utf8)
|
||||||
|
function E($v){if($null -eq $v){return ''};[Security.SecurityElement]::Escape([string]$v)};function XCol($n){$s='';while($n-gt 0){$n--; $s=([char](65+($n%26)))+$s;$n=[math]::Floor($n/26)};$s};function SX($rows){$b=[Text.StringBuilder]::new();[void]$b.Append('<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><sheetData>');$r=1;foreach($row in $rows){[void]$b.Append('<row r="'+$r+'">');$c=1;foreach($p in $row.PSObject.Properties){[void]$b.Append('<c r="'+(XCol $c)+$r+'" t="inlineStr"><is><t xml:space="preserve">'+(E $p.Value)+'</t></is></c>');$c++};[void]$b.Append('</row>');$r++};[void]$b.Append('</sheetData></worksheet>');$b.ToString()}
|
||||||
|
function XLSX($path,$sheets){$fs=[IO.File]::Create($path);$z=[IO.Compression.ZipArchive]::new($fs,[IO.Compression.ZipArchiveMode]::Create);try{$ct='<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/>';for($i=1;$i-le $sheets.Count;$i++){$ct+='<Override PartName="/xl/worksheets/sheet'+$i+'.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/>'};$ct+='</Types>';$root='<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/></Relationships>';$wb='<?xml version="1.0" encoding="UTF-8" standalone="yes"?><workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"><sheets>';$rels='<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">';$i=1;foreach($name in $sheets.Keys){$wb+='<sheet name="'+(E $name)+'" sheetId="'+$i+'" r:id="rId'+$i+'"/>';$rels+='<Relationship Id="rId'+$i+'" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet'+$i+'.xml"/>';$i++};$wb+='</sheets></workbook>';$rels+='</Relationships>';$entries=[ordered]@{'[Content_Types].xml'=$ct;'_rels/.rels'=$root;'xl/workbook.xml'=$wb;'xl/_rels/workbook.xml.rels'=$rels};$i=1;foreach($name in $sheets.Keys){$entries['xl/worksheets/sheet'+$i+'.xml']=SX $sheets[$name];$i++};foreach($e in $entries.GetEnumerator()){$x=$z.CreateEntry($e.Key);$x.LastWriteTime=[DateTimeOffset]::new(2000,1,1,0,0,0,[TimeSpan]::Zero);$w=[IO.StreamWriter]::new($x.Open(),$utf8);try{$w.Write($e.Value)}finally{$w.Dispose()}}}finally{$z.Dispose();$fs.Dispose()}}
|
||||||
|
$sumRows=@([pscustomobject]@{Плагин='Плагин';'Количество записей'='Количество записей';'Количество запусков'='Количество запусков';'Первое использование'='Первое использование';'Последнее использование'='Последнее использование';'Активных дней'='Активных дней';'Активных месяцев'='Активных месяцев';'Среднее запусков на активный день'='Среднее запусков на активный день';'Максимум запусков за день'='Максимум запусков за день';'Месяц максимального использования'='Месяц максимального использования';'Запусков в максимальный месяц'='Запусков в максимальный месяц';'Доля от всех запусков'='Доля от всех запусков'})+@($plugin|%{[pscustomobject]@{Плагин=$_.PluginName;'Количество записей'=$_.RecordCount;'Количество запусков'=$_.TotalLaunches;'Первое использование'=$_.FirstUsage;'Последнее использование'=$_.LastUsage;'Активных дней'=$_.ActiveDays;'Активных месяцев'=$_.ActiveMonths;'Среднее запусков на активный день'=$_.AverageLaunchesPerActiveDay;'Максимум запусков за день'=$_.MaxLaunchesPerDay;'Месяц максимального использования'=$_.MaxUsageMonth;'Запусков в максимальный месяц'=$_.MaxMonthLaunches;'Доля от всех запусков'=$_.ShareOfAllLaunches}});$dayRows=@([pscustomobject]@{Плагин='Плагин';Дата='Дата';'Количество запусков'='Количество запусков';'Количество исходных строк'='Количество исходных строк'})+@($day|%{[pscustomobject]@{Плагин=$_.PluginName;Дата=$_.UsageDate;'Количество запусков'=$_.LaunchCount;'Количество исходных строк'=$_.SourceRecordCount}});$sourceRows=@([pscustomobject]@{Плагин='Плагин';Дата='Дата';'Количество запусков'='Количество запусков';'Анонимизированный источник'='Анонимизированный источник';'Исходная строка'='Исходная строка'})+@($normalized|%{[pscustomobject]@{Плагин=$_.PluginName;Дата=$_.UsageDate;'Количество запусков'=$_.LaunchCount;'Анонимизированный источник'=$_.SourceId;'Исходная строка'=$_.SourceRow}});$qualityRows=@($quality.PSObject|%{[pscustomobject]@{Показатель=$_.Name;Значение=$_.Value}});$sheets=[ordered]@{'Итог по плагинам'=$sumRows;'Плагин × месяц'=@([pscustomobject]@{Плагин='Плагин'})+@($monthRows);'Плагин × день'=$dayRows;'Исходные агрегаты'=$sourceRows;'Качество данных'=$qualityRows};XLSX (Join-Path $OutputDirectory 'plugin-usage-final.xlsx') $sheets
|
||||||
|
$readme="XLSX files: $($quality.XlsxFound)`r`nUnique workbooks by SHA-256: $($quality.UniqueWorkbooks)`r`nDuplicate workbooks: $($quality.DuplicateWorkbooks)`r`nRows examined: $($quality.RowsExamined)`r`nValid aggregate rows: $($quality.ValidAggregateRows)`r`nRejected rows: $($quality.RejectedRows)`r`nUnique plugins: $($quality.UniquePlugins)`r`nDate range: $($quality.DateRange)`r`nTotal launches: $($quality.TotalLaunches)`r`nMost used plugin: $($plugin|select -First 1 -Expand PluginName)`r`nMost active month: $((($raw|group UsageMonth)|sort Count -Descending|select -First 1).Name)`r`nComputer field available: NO`r`nComputer matrix generated: NO`r`n`r`nOnly Plant3D sheets were analyzed. Source files are anonymized as source-0001.xlsx; project numbers, names, users and paths are not published.`r`n`r`nThe semantic of File was not used for deduplication: rows with same plugin/date/count were retained because File may represent separate aggregate dimensions.`r`n`r`nRepeat: .\tools\plugin-usage\Build-Plant3DPluginUsageAggregate.ps1 -SourceRoot C:\dev\TEMP\CheckPlugin -SheetName Plant3D -OutputDirectory .\migration\audits\plugin-usage-plant3d-aggregate-20260731";[IO.File]::WriteAllText((Join-Path $OutputDirectory 'README.md'),$readme,$utf8)
|
||||||
Reference in New Issue
Block a user