Compare commits

...
Author SHA1 Message Date
michal 19985eb084 next backup 2024-11-20 11:35:26 +01:00
michal c2816c92cf backup project settings 2024-11-20 11:33:34 +01:00
michal 7d15073bb5 improve logs and added try, catch blocks 2024-11-14 13:05:33 +01:00
Milan Hanajik 79be186bef Reconfigured for Bari 2023-08-09 12:36:41 +02:00
Milan Hanajik 0fbc9e2bad DataEntry.Uni bug fixes, ver. 3.6.2086 2023-08-09 12:36:15 +02:00
Milan Hanajik ed5cd89d6a File names of test start and test end pictures are defined in DataEntry.Uni. 2023-08-02 10:19:12 +02:00
Milan Hanajik dd5b20ab38 DataEntry.Uni camera support in TestStartEndForm, ver. 3.6.2072 2023-08-01 11:54:01 +02:00
Milan Hanajik 3f35506b26 TestWizard.TestProfileSelection : Conversion to float avoided. 2023-07-13 13:31:22 +02:00
Milan Hanajik 1ee7e00928 sluprimadev --> deluh1web03 2023-07-12 12:07:15 +02:00
Milan Hanajik ffbfd5ebd5 Ver. 3.6.2068 2023-07-04 13:35:09 +02:00
Milan Hanajik 7a2afd1bdc Bug fix in ProcessTabPageCtrl : Exception when simulating, ver. 3.6.2067 2023-07-03 13:27:08 +02:00
Milan Hanajik 30f9ea19dd OrderManagement : Finish button, Show finished orders check box, ver. 3.0.14 2023-06-24 16:40:36 +02:00
Milan Hanajik 2ec8683b27 UpgradeSelectionDlg implements 3.1 -> 3.2 and 3.2 -> 3.3 2023-06-23 16:48:44 +02:00
Milan Hanajik 4f59f23c6f Clean-up, bug fix in SharedDatabase.Utils.GetTestName( ) - could freeze, ver. 3.6.2062 2023-06-23 16:48:44 +02:00
Milan Hanajik daac273edb DataEntry.Uni re-factorization and minor fix when ORACLE_DB, items in summaryResults. 2023-06-23 16:48:06 +02:00
Milan Hanajik edb084260f Bug in water meter chart fixed : Incorrect error limit lines 2023-06-16 15:30:38 +02:00
Milan Hanajik 8370c7c2e7 1. MainSeqUtils.CreateNewBatchResults( ) : WaterMeterData.ErrLimHi/LoQ initialized properly, 2. comments. 2023-06-16 13:34:24 +02:00
Milan Hanajik 4a394cc5d5 UI.Procedures.ProceduresCtrl : MoreContent.DEAndSequences added. 2023-06-15 11:31:46 +02:00
Milan Hanajik f4db55cc0b S640TestApp to verify web-services, etc. 2023-06-15 11:29:50 +02:00
Milan Hanajik b4f41a2f1f Workplace...S640Stream : New evaluation, Green/yellow progress bar, Interval 400ms, ver. 3.1.19 2023-05-26 14:09:54 +02:00
Milan Hanajik 5b9156d670 PartDlg, PartsCtrl updated, CodeForm of relased workflows can be modified, ver. 3.0.5 2023-05-25 14:54:39 +02:00
Milan Hanajik bebb83f6fc SharedDatabase.Entities.Part.OraDBType removed, CodeType/CodeForm descriptions updated. 2023-05-25 14:54:28 +02:00
Milan Hanajik 130b59fc91 DataEntry.Uni.TestStartEndForm implemented 2023-05-19 15:11:18 +02:00
Milan Hanajik b2a7cfb0d4 DataEntry.Uni Items passed in a list, w/o limits, Cfg with arrays, TODO: TestStartEndForm 2023-05-19 15:11:18 +02:00
Milan Hanajik b67857f658 Access right clean-up for PL. 2023-05-19 15:11:10 +02:00
Milan Hanajik 046fab05c0 S640CommForm bug fix : Crashed when order info was missing. 2023-05-19 10:11:07 +02:00
Milan Hanajik 6004a65572 ver. 3.6.2046 2023-05-11 12:00:21 +02:00
Milan Hanajik 0962efd159 1. DataEntry.Uni implemented, 2. TeststartEndForm with s/n-s, 3. DataEntry.Double24 and Fewa deleted, ver. 3.6.2045 2023-05-11 11:56:43 +02:00
Milan Hanajik cb1a471248 Preparation for DataEntry.Uni 2023-04-24 20:00:49 +02:00
Milan Hanajik 8da049219a TestWizard.VolumeAndErrorSelection fixed - conversion to float avoided. 2023-04-24 20:00:49 +02:00
Milan Hanajik 91b55eb19c 'Starting the system' message on start-up before MainWnd opens, ver. 3.6.2035 2023-04-06 10:55:00 +02:00
Milan Hanajik 6b582bea64 Printing from PreviousResultsDlg, CompoundDetectionTextBox.AppendText( ), ver. 3.6.2035 2023-04-06 08:37:32 +02:00
Milan Hanajik 61910932c2 CombinedWithDetectionSeq, ProcessTabPageCtrl and SeqBase.ReadRegistersTempPressAmbient() changes, ver. 3.6.2030 2023-03-31 11:28:04 +02:00
Milan Hanajik 1ecf528ff0 RegValve.ChangeRegValvePositionOp fixed 2023-03-30 12:07:59 +02:00
Milan Hanajik 9a5ee99a82 TestWizard.FlowSelection fixed, conversion to float avoided. 2023-03-30 10:04:25 +02:00
Milan Hanajik cf626d7b91 Batch.SaveTime introduced, Batch.EndTime calculation modified. 2023-03-30 10:04:14 +02:00
Milan Hanajik b9e8eeab00 UpgradeSelectionDlg changes : ver. 3.3 -> ver. 3.6 2023-03-30 09:09:16 +02:00
Milan Hanajik b880b62924 WMChart can plot error limits other then 2% and 5% and qp,qi style hyperbolic error limits, related DB and UI changes, ver. 3.6.2028 2023-03-24 16:43:21 +01:00
Milan Hanajik 36f8bfa32f All Output.Printers components : string PrinterName parameter specifies printer to be used. 2023-03-14 11:22:38 +01:00
Milan Hanajik 8be3b53db4 default_printer added to Resources.Strings 2023-03-14 11:22:38 +01:00
Milan Hanajik 95759e70b4 DataEntry.Standard24 clean-up, ver. 3.5.2024 2023-03-07 09:54:46 +01:00
Milan Hanajik 2e6a17121f Bug fix in StandingStartMassCollectionSeq 2023-03-06 12:21:43 +01:00
Milan Hanajik ed21db65c3 Uni.RegValveAnalog : Initial implementation for UNI, ver. 3.5.2015 2023-02-13 09:54:05 +01:00
Milan Hanajik d29a425880 Order of saving results to MySql DB and to other destinations changed, try-catch for other destinations. 2023-02-08 10:16:46 +01:00
Milan Hanajik a4139d7a73 Uni.RegValve clean-up. 2023-02-06 15:39:33 +01:00
Milan Hanajik a6a517b6ea Bug fixes : TestRslt.IsStartStop( ), IsRelErrTest( ), IsVolumeMethod( ), ... 2023-02-06 08:54:53 +01:00
Milan Hanajik 07f36f2945 Bug fix in Uni.RegValve.SetFlowOp : 2000 --> flowMeter.NominalFreq, ver. 3.5.2013 2023-01-26 14:57:21 +01:00
Milan Hanajik e2048ed64c Bug fix in Danfoss.VLT2800.Pump, ver. 3.5.2012 2023-01-25 13:42:14 +01:00
Milan Hanajik 90b62779fd Bug fix : DataEntry.StandardCamera.TestStartEndForm crashed when no RR was defined at certain position 2022-12-21 09:37:06 +01:00
Milan Hanajik 1c6488d621 Camera modifications : CheckDeviceCaps( ), CameraBinaryFiles2, etc, ver. 3.5.1997 2022-12-15 16:22:19 +01:00
Milan Hanajik 62e9f612fc Shared buttons : Accelator keys 2022-12-15 16:22:19 +01:00
Milan Hanajik 9e9a01bd43 Approval by legalizator when #define LANG_PL, ver. 3.5.1993 2022-11-30 11:06:39 +01:00
Milan Hanajik 6dcd40c640 Profiles: Method added, imp./exp. fixed, Procedures: Selection by profile, Create from profile button, etc, ver. 3.5.1992 2022-11-25 13:59:35 +01:00
Milan Hanajik b54de856af Power user password changes. 2022-11-21 12:41:29 +01:00
Milan Hanajik 118ce9797f FixedStartMassCollection : Diverter to tank after start valve is closed, ver. 3.4.1981 2022-11-11 14:26:38 +01:00
Milan Hanajik 36ae8479ca 'Winiki lub E' support MeterTestRslt 2022-11-11 14:14:44 +01:00
Milan Hanajik 9ca9d41ddc Browsing previous results : SerialNr can be used as a search criterion. 2022-11-09 12:19:42 +01:00
Milan Hanajik 4f26815e68 PressureMeter : var pressLimit in new double[] { 2.18, 2.2, 2.22, 2.24, 2.26, 2.27 }, ver. 3.4.1977 2022-11-04 12:29:40 +01:00
Milan Hanajik abd68f9a44 BatchNr is displayed in MainWnd status bar. 2022-10-28 15:04:07 +02:00
Milan Hanajik ae8a0ca4c1 Changes in TBF.Rig.Uni.RegValve(s), TBF.Rig.CB.Uni.Action.RegVlvMoveToPos, etc. 2022-10-28 15:04:07 +02:00
Milan Hanajik ac5684a2b5 Config.Entities.OutputPath.RegVPositions added, UI and SequenceBase changes, ver. 3.4.1975 2022-10-28 15:03:58 +02:00
Milan Hanajik 0f738be73e Bug fix 2022-10-21 15:45:53 +02:00
Milan Hanajik 4b85db202e Bug fix, ver. 3.3.1973 2022-10-21 08:46:43 +02:00
Milan Hanajik 96c300d34f PressureMeter.Meret : WaitUntilPressureIsOp conditions, ver. 3.3.1972 2022-10-13 19:13:45 +02:00
Milan Hanajik dbdf1f8fb6 Project dependencies for Workplace (Nanjing) fixed. 2022-10-13 18:22:32 +02:00
Milan Hanajik 6158ee93dc As in 2.30.1971 : StandardCamera.TestStartEndForm with OCR, LiveStreamOp with overlay (test par.), camera does not upload binary files on startup. 2022-10-04 16:46:17 +02:00
Milan Hanajik 6270e0c417 UltrasoundLevelMeter is displayed on the schematic drawing. 2022-09-29 16:59:25 +02:00
Milan Hanajik 67ba9986f2 Renaming transition sequences enhanced.. 2022-09-08 08:16:37 +02:00
Milan Hanajik d2e8f4f0e3 Better on-screen error message when a path is missing in a test, ver. 3.3.1941 2022-08-05 14:58:47 +02:00
Milan c9ea85b7b8 Results project upgraded by VS2022. 2022-08-02 11:49:41 +02:00
Milan Hanajik 86ed8b13bf TestMethods.StandingStartMassCollWODiv added, ver. 3.3.1940 2022-08-02 09:33:37 +02:00
Milan Hanajik 328c170888 StandingStartMassCollection test without a diverter is now possible, ver. 3.3.1935 2022-07-31 17:34:04 +02:00
Milan Hanajik ee31628417 All projects target .Net Framework 4.7.2 2022-07-28 12:50:01 +02:00
Milan Hanajik 267a6557df Bug fix in LocalSettings related to Path/Meters, ver. 3.3.1934 2022-07-28 10:18:32 +02:00
Milan Hanajik 177d17cb81 Sample log4netConfig file modiifed. 2022-07-27 15:05:11 +02:00
Milan Hanajik 4d0441d9a2 Qfrom, Qto, Volume, TestTime : float -> double, config DB change. 2022-07-06 15:51:48 +02:00
Milan Hanajik 01523d3765 Custom units in MetrologyDlg tabs Balance, FlowMeter, PressMeter and TempMeter, ver. 3.3.1928 2022-06-24 14:36:08 +02:00
Milan Hanajik 751f3b29bb Clean-up 2022-06-24 14:34:05 +02:00
Milan Hanajik 969041354b DataStream.Reader.ProcParams class added. 2022-06-14 13:52:08 +02:00
Milan Hanajik ba3fcad44d ErrorFlags and FlyingStartMassCollProlong : English units supported. 2022-06-03 14:21:02 +02:00
Milan Hanajik 877c8446ae TempControl.Novus : (1) fixes in sequence operations implementation, (2) N1040 support. 2022-06-03 14:16:42 +02:00
Milan Hanajik ae6ee631c6 TBF.UI.Bench.Paths controls support imperial units for flow. 2022-06-03 13:53:57 +02:00
Milan Hanajik 155a3a3113 ProcedureDlg clean-up 2022-06-03 13:11:03 +02:00
Milan Hanajik c00f90ed8a SensusTestInfo related : Synchronization with branch 2.28 2022-05-31 09:32:34 +02:00
Milan Hanajik 285facc3fd OneWMResult...Ctrl caption with position and pruefindex, wm.Pruefindex initialized to 0, set in SensusOracle.Database 2022-05-31 09:21:16 +02:00
Milan Hanajik b9d1fe5de7 Simulation of fixed start mass collection method with still camera images possible. 2022-05-31 08:40:51 +02:00
Milan Hanajik 56e519b4e4 Bug fix (Test.TempControl related). 2022-05-31 08:33:39 +02:00
Milan Hanajik 33f5274a6d More Common.CurrentUser related changes (IPERL/ORACLE) 2022-05-30 16:18:56 +02:00
Milan Hanajik f1f662a419 Common..CurrentUser static class with Stack<UserAndForm> userStack, Change( ) and Restore( ). 2022-05-25 15:23:55 +02:00
Milan Hanajik 00fc9ea847 1 "Set temprature setp..." seq. condition never met, 2 FlowMetersInParallel : InactiveFlowmtr for correct display, ver. 3.2.1913 2022-05-16 11:11:05 +02:00
Milan Hanajik b0a534315e Flow control problems when parallel flow meters are used fixed, ver. 3.2.1912 2022-05-16 09:47:59 +02:00
Milan Hanajik 158bba0d27 Bug fix in TempControl.Novus and Easytherm, both ProcParams contains Temp_A/B/C/D/E, related ConditionOp-s, ver. 3.2.1911 2022-05-13 17:49:44 +02:00
Milan Hanajik 4a1eb91c2f Various.CoverTest bug fix, ver. 3.2.1910 2022-05-13 13:48:33 +02:00
Milan Hanajik ae876a649a Tempterature controller setpoint set at the beginning of all tests in the main sequence, ver. 3.2.1909 2022-05-13 13:48:33 +02:00
Milan Hanajik e608c9fd6b UI.Procedures.ProcedureDlg Metrology 2 tab supports TempControl test parameter. 2022-05-13 13:48:17 +02:00
Milan Hanajik a8ba5d5113 string Test.TempControl and string TestData.TempControl added and used in sequences. 2022-05-13 13:47:53 +02:00
Milan Hanajik 2bae912fa0 1 ITempControl moved to GenericDevices, 2 Dummy.TempControl component, 3 TempControl.Easytherm changed to fit ITempControl. 2022-05-13 09:33:03 +02:00
Milan Hanajik 451faf1586 TempControl.Novus : Setpoint step is configurable (incl. rounding) 2022-05-12 12:16:12 +02:00
Milan Hanajik 1a49390ba8 ProcessTabPageCtrl supports compound meters. 2022-05-10 13:05:20 +02:00
Milan Hanajik 395e159522 Water flow related result items cleaned-up, Flow_ctv/_min/_max/_start_/end and Qc removed. 2022-05-10 13:05:20 +02:00
Milan Hanajik fefd846f13 Dead code removed (ProcessTabPageCtrl6/24/48). 2022-05-10 13:05:20 +02:00
Milan Hanajik 19d54d4990 ProcessTabPageCtrl : uses CB Activity, displays S/Ns, supports Flying start and compound meters, ver. 3.1.1907 2022-05-07 14:18:48 +02:00
Milan Hanajik e428897822 ControlBoard Activity added, updated in operations, values are defined in Enums. 2022-05-06 17:18:45 +02:00
Milan Hanajik 1b402566ed Bug fix in FlyingStartMassCollection simulation. 2022-05-06 17:18:45 +02:00
Milan Hanajik 5d23bcade3 Bug fix in Uni.RegValve.SetFlowOp : flowMeter.NominalFreq instead of 2000, ver. 3.1.1903 2022-05-05 10:42:30 +02:00
Milan Hanajik 56d68f0b63 ProcessTabPageCtrl displays PulsesPerLiter fo water meters, ver. 3.1.1902 2022-05-04 14:57:40 +02:00
Milan Hanajik c16e9a8d56 Changes in Results.Entities.TestRslt done in SharedDatabase.Entities.TestRslt as well. 2022-05-04 14:03:26 +02:00
Milan Hanajik 955e55f327 BenchInfo component is loaded and TBF.Data.SetData( ) is called in Program.Main(.) before MainWnd is created. 2022-05-04 12:38:12 +02:00
Milan Hanajik fbd9c976eb FlowMetersInParallel : StartStatistics(test), UpdateStatistics(delta), StopStatistics( ) 2022-05-04 10:56:38 +02:00
Milan Hanajik 2c0ae68db0 IFlowMeterSingle with GetRange(.) and CorrectedFlow(.), Test method calculations clean-up, refactorization, ver. 3.1.1901 2022-05-04 10:23:21 +02:00
Milan Hanajik 9a42e199e3 Uni.FlyingStartStopTestOp bug fix, ver. 3.1.1899 2022-04-29 15:36:45 +02:00
Milan Hanajik e3bb64ef0f Scale display bug fix when units are g, Parallel flowmeter initialization, ReadFlow() fix and logging, ver. 3.1.1898 2022-04-29 14:57:54 +02:00
Milan Hanajik 4361227975 ProcessTabPageCtrl-Test data displed, ProcessData.Mass and RefPulses are properties, ClearProcessValues() at the beginning of each test, etc, ver. 3.1.1896 2022-04-28 09:16:07 +02:00
Milan Hanajik c5d550259f MsrdUnit and MsrdFormat added to ScaleCfg 2022-04-28 09:16:07 +02:00
Milan Hanajik ab140cc6af IFlowMeter, IPressureMeter and ITempMeter extended to support Process tab page updates. 2022-04-26 16:53:10 +02:00
Milan Hanajik 43ce2552a2 Scale capacity, etc. : float --> double 2022-04-26 16:53:10 +02:00
Milan Hanajik d6880fc1b7 TBF.Resources.Strings : Clean-up 2022-04-26 16:53:10 +02:00
Milan Hanajik 4b450846df Bug fix in SchematicDrawing - Diverter edges. 2022-04-26 16:53:10 +02:00
Milan Hanajik 95fb7ab9cc Novus : Setpoint incr/decr from UI, comm. latency removed, isHeating/isCooling evaluation modified, clean-up 2022-04-26 16:53:10 +02:00
Milan Hanajik c5db2c0138 SchematicDrawing.IDrawingItCmpntWithCustomBmp and several bitmaps added, ver. 3.1.1886 2022-04-26 16:53:10 +02:00
Milan Hanajik deabff9a18 TBF.Rig.Modbus.TempControl folder with Easytherm and Novus components. 2022-04-26 16:52:49 +02:00
Milan Hanajik fc81344857 Initialization and logging of several TBF.Rig.Modbus components. 2022-04-26 16:51:23 +02:00
Milan Hanajik fd35f20501 ProcessTabPageCtrl schem. diag. OK, Bridge.StateMachineTickHandler exception handling changed 2022-04-15 13:40:00 +02:00
Milan Hanajik 80f4308ae1 Bug fix in TBF.Rig.Bench/Feeding/Meters/OutputPath 2022-04-15 13:40:00 +02:00
Milan Hanajik 33f823b2d8 UniCB : (1) Supports output bits 0..7 (2) Uses QuidoRS outputs for route bits 64..79 2022-04-15 13:39:49 +02:00
Milan Hanajik 5ad4a07965 Clean-up 2022-04-13 16:05:31 +02:00
Milan Hanajik 03900e453e Bridge.ProcessDataHandler and Bridge.OnProcessData( ) calls removed. 2022-04-08 16:03:45 +02:00
Milan Hanajik e96692405c Leak/PMaxTest refactorization, LeakTest : 1. close valve+pump off 2. delay 3. start mass 4. leak test 5. end mass 2022-04-08 11:50:15 +02:00
Milan Hanajik 4f70997a38 PumpTandem bug fix : Error handling when one of two pumps was renamed. 2022-04-07 15:08:06 +02:00
Milan Hanajik f3a61411f5 Default database type is DBType.MySql. 2022-04-05 12:16:17 +02:00
Milan Hanajik f20acf0e11 DataEntry.Double24 component added. 2022-04-01 12:31:58 +02:00
Milan Hanajik 57e413d6ff iPerlCommunication changes from 2.27 branch : Conditional Q2 error correction fixed, ver. 3.1.1874 2022-04-01 11:18:56 +02:00
Milan Hanajik 12abe09661 (1) Workplace log4net configuration, (2) ControlBoard.Uni comments 2022-04-01 09:16:27 +02:00
Milan Hanajik 4e09cf5adb GenericTest (Laser) : MInimize box enabled, ver. 3.0.2 2022-03-24 07:53:47 +01:00
Milan Hanajik 938da3ac62 DataEntry.S620 : Purchase order re-read before starting form,at the end of the cycle, ver. 3.1.1873 2022-03-23 07:57:53 +01:00
Milan Hanajik 3c59cd1bee Workplace : Order name length up to 10 digits, ver. 3.1.17 2022-03-21 18:28:12 +01:00
Milan Hanajik 8578c7f220 Workplace : OrderInfo updates are transactions, separate DB session for tracing records and OrderInfo updates, ver. 3.1.16 2022-03-17 13:31:15 +01:00
Milan Hanajik f23fc0d4c4 OrderManagement: 1.POName max. 10 digits 2.Modifications by others checked 3.DB updates are transactions 4.Order state refreshed each 5 s 5.version displayed in wnd title, ver. 3.0.13 2022-03-17 13:29:05 +01:00
Milan Hanajik 10b17c250c More logging in DataEntry.S620.FormForMechanicalMetersWithTracing, etc, ver. 3.1.1872 2022-03-09 12:10:14 +01:00
Milan Hanajik 8d47659660 ProcessTabPageCtrl bug fix, Common.Formulas improvement, clean-up, ver. 3.1.1867 2022-01-28 18:35:09 +01:00
Milan Hanajik 08a08282b5 Bug fixes : 1. DaEntry.Std24.TestStartEndForm, 2. StandingStartMassColl mass msrmnt, not finished, process data logging, ver. 3.1.1864 2022-01-28 16:36:58 +01:00
Milan Hanajik 851c51aa7c SetFlowOp with 'delay' parameter (default 0), flow setting starts after this delay in sec. 2022-01-28 14:43:42 +01:00
Milan Hanajik ecc92176f3 Clean-up after comparing 2.27 and 3.1 branches, ver. 3.1.1861 2022-01-28 14:43:42 +01:00
Milan Hanajik 2a97a8f584 UI : ProcedureDlg : TempLo, TempHi, TempUnit, Uncertainty and Repeats in Metrology I and II swapped. 2022-01-28 14:43:42 +01:00
Milan Hanajik c18f06af07 TM.iPerlCommunication and IperlHead synced with v.2.27, ISessionDataMngmnt replaces IHasClearSessionData and IHasTestName. 2022-01-28 14:43:33 +01:00
Milan Hanajik b9b609cabf Clean-up 2022-01-23 20:11:34 +01:00
Milan Hanajik f96bf993d8 Various.Clamping added, Various.CoverTest modified, ver. 3.1.1857 2022-01-21 16:08:03 +01:00
Milan Hanajik 899b379cf7 FeatureVectorCalculator updated to current version. 2022-01-20 18:32:30 +01:00
Milan Hanajik 868d16d8ee Bug fixes in TestMethods.StandingStart, ver. 3.1.1856 2022-01-19 15:42:34 +01:00
Milan Hanajik bfe7c5a29e ProductionTracing : UserLogin, ComboBox history saved, UI-Workflow next to Order, UI-Panel1 size, ver. 3.0.2 2022-01-19 14:03:49 +01:00
Milan Hanajik c7c1c21ab3 TestMethods.StandingStart added, ver. 3.1.1854 2022-01-17 15:30:11 +01:00
Milan Hanajik fe9cfa42ff Bug fixes in test method sequences : return missing in case of a configuration error. 2022-01-17 15:28:18 +01:00
Milan Hanajik 32762f0fdb Bug fix in MeasurementCorrection.GetCorrection( ), ver. 3.1.1853 2022-01-17 12:45:47 +01:00
Milan Hanajik d42ad8c5cf GenericTest and RecordProessing modifications for Laser in Nanjing, ver. 3.0.1 2022-01-17 10:26:56 +01:00
Milan Hanajik 2eaf2b044c SharedDatabase.WorkflowSummary.ReadFromDB(), int wm.ProcessId -> string wm.Workflow, etc. 2022-01-17 10:26:55 +01:00
Milan Hanajik 0b400fcbd0 SharedDatabase.WorkflowSummary added. 2022-01-17 10:26:45 +01:00
Milan Hanajik 7facefb305 Radio address format "D9" defined on one place: SharedDatabase.Const.RAFormat 2022-01-15 13:01:50 +01:00
Milan Hanajik 917051f072 Water meter test results graph fixed, ver. 3.1.1849 2022-01-12 12:38:01 +01:00
Milan Hanajik 589fd9cf18 OrderManagement bug fix, ver. 3.0.11 2022-01-12 10:39:05 +01:00
Milan Hanajik 4914ded61d Workplace ver. 3.1.15 2022-01-12 09:33:52 +01:00
Milan Hanajik 1af0b71503 Production tracing clean-up, ver. 3.1.1848 2022-01-12 07:53:03 +01:00
Milan Hanajik 2f1a8cc9d6 Production tracing : Saving records OK, Verification should be OK (TODO: Test) 2022-01-11 20:28:28 +01:00
Milan Hanajik 32047ef76a Clean-up 2022-01-11 20:27:06 +01:00
Milan Hanajik 18f7de5f97 WorkflowConfigurator handles case CurrrentUser==null correctly, Max. part name len.=10, ver. 3.0.4 2022-01-11 14:52:50 +01:00
Milan Hanajik 6d3fa9b110 Added DB columns : SharedDatabase.Entities.OrderInfo.Year, ...ReferenceRecord.Name1,Name2, OrderManagement ver. 3.0.10 2022-01-11 13:03:16 +01:00
Milan Hanajik eea94d1d9f ProductionTracing : saving StepRecord and updating ReferenceRecord. ver. 3.1.1847 2022-01-10 08:11:52 +01:00
Milan Hanajik a6ba6e26b2 SharedDatabase entities/mappings changes, StepRecord added, RR.Code1,2,3,4, etc. Workplace ver. 3.1.14 2022-01-10 07:27:18 +01:00
Milan Hanajik c75e3d08d3 GenericTest project added. 2022-01-07 16:04:16 +01:00
Milan Hanajik 43a32adb7e Workplace, DataMatrix4Net and RecordProcessing projects added. 2022-01-07 14:15:02 +01:00
Milan Hanajik 9a7ed9668b SharedDatabase : DoubleLoginDlg, TripleLoginDlg. 2022-01-07 12:23:31 +01:00
Milan Hanajik 068aee3cbd WorkflowConfigurator project added. 2022-01-07 12:23:23 +01:00
Milan Hanajik 2710823931 ListViewEx clean-up. 2022-01-07 12:23:22 +01:00
Milan Hanajik 6150c5b808 Common : QuitAppException class added, ModelessForm troubleshooted 2022-01-07 12:22:54 +01:00
Milan Hanajik 3c93e56b67 SharedDatabase clean-up 2022-01-06 15:41:19 +01:00
Milan Hanajik af13e2f2b4 Events.EndSession added, after S640Communication at the end 'End session' is invoked automatically. 2022-01-06 08:00:07 +01:00
Milan Hanajik 4d018a8ba8 DataEntry.iPerl bug fixes when invoked without the production tracing, ver. 3.1.1846 2022-01-06 08:00:07 +01:00
Milan Hanajik df89050d78 DataEntry.S620 bug fixes when invoked without an order (after restoring results). 2022-01-06 08:00:06 +01:00
Milan Hanajik 6071d7f598 Bug fixes : Ambient temperature, pressure, humidity calculation in Results. 2022-01-06 08:00:06 +01:00
Milan Hanajik 1b767f6298 MeterTestRslt.Passed set correctly in iPerlCommunicationSeq.MakeQ2CorrectedFrom( ), etc., ver. 3.1.1845 2022-01-05 08:18:48 +01:00
Milan Hanajik 8da5512eb0 enum FillState in Common.Enums, FillState ProcessData.FillState introduced and used in TBF.Rig.Sequences. 2022-01-04 18:10:44 +01:00
Milan Hanajik 1133a2d5bf Bug fixes : 1 Saving results cannot be stopped, 2 Processing statistics, 3 SensusTestInfo 2022-01-04 15:30:10 +01:00
Milan Hanajik c8ff5f8813 ResultsBrowser with Assigned s/n, Complete s/n and RadioAddress (Nanjing), ver. 3.1.1803 2021-12-21 09:25:46 +01:00
Milan Hanajik 1f0bbc0d4e DataEntry.S620 : Serial number assignment fixed, AssignedSN = -1 when not assigned, ver. 3.1.1843 2021-12-17 11:51:53 +01:00
Milan Hanajik ba549cbaee MainWnd: Reload procedures button. 2021-12-17 11:51:53 +01:00
Milan Hanajik 1a8a6defd9 OrderManagement.OrderStateDlg displays order progress information, ver. 3.0.9 2021-12-16 10:01:35 +01:00
Milan Hanajik 9a5f2c1a60 OrderInfo : CurrentNr1,2,3,4,5 added, 2021-12-16 08:18:54 +01:00
Milan Hanajik ee89158ae3 Uni.FlowMeter nominal frequency is a parameter, ver. 3.1.1840 2021-12-15 14:34:45 +01:00
Milan Hanajik 15e9c25dcf DataEntry.S620 : Serial number assignment, ver. 3.1.1839 2021-12-15 09:36:21 +01:00
Milan Hanajik c826b40e80 OrderManagement: Conflict check, OrderInfo.VacoDescription/MadeInText/Packing Varchar(255) added, etc. ver. 3.0.7 2021-12-14 23:08:36 +01:00
Milan Hanajik 804cf2aaea ver. 3.1.1836 2021-12-14 08:15:05 +01:00
Milan Hanajik 47511ef873 Tracing: CurrentPcsCount/CurrentSN/CurrentRA incremented, OrderInfo, Workflow and Workplace re-read from DB after sel., ver. 3.1.1835. 2021-12-13 15:03:52 +01:00
Milan Hanajik 43caffd73d S640CommForm Start/Ende.pro fixed, OriRadioAddress added to results, OrderInfo.Clone9) fixed, ver. 3.1.1833 2021-12-10 11:39:16 +01:00
Milan Hanajik 0d0355c65a ProductionTracing for Nanjing, OrderInfo updated after assignment of serial numbers, ver. 3.1.1831 2021-12-10 07:59:58 +01:00
Milan Hanajik dfddc8a980 OrderManagement : Copy button, ver. 3.0.7 2021-12-10 07:59:58 +01:00
Milan Hanajik 68c3ccbef6 SelectedProcedure stored in ProcessData, used in DataEntry.iPERL and S620, S640Comm cleaned, IOrderInfo, I640Cfg, OrderManagement v.3.0.6, etc. 2021-12-09 17:12:52 +01:00
Milan Hanajik ff28d507cf TestMethods.Evacuation added. 2021-12-09 17:12:51 +01:00
Milan Hanajik 2c00ed6dc4 SensusOracle : UID and Pwd invisible, CreateWztypIfMissing, VtAuftragPd, VtPruefpunktSollSd.Qbezeichnung max 8 char, more logging 2021-12-09 17:12:51 +01:00
Milan Hanajik cd84c82475 SensusOracle : Automatic WZ_TYPE_ID assignment and creation OK, ver. 3.1.1815 2021-12-09 17:12:51 +01:00
Milan Hanajik e324de985f Metrology and Uncertainties dialogs display tabs for Rig.Scales.MettlerToledo. 2021-12-09 17:12:51 +01:00
Milan Hanajik 0e45ef6689 TBF.Rig.Network.Comet.Ambient fixed : UpdateProcessData() was missing. 2021-12-09 16:35:04 +01:00
Milan Hanajik edc48d8723 Gitignore modified. 2021-12-09 16:35:04 +01:00
Milan Hanajik 3630af4a59 OrderManagement ver. 3.0.4 : Support for predefined orders 2021-12-01 16:55:06 +01:00
Milan Hanajik d1e0d1466d SharedDatabase synchronized with Production-Monitoring.TracingDB 2021-12-01 13:13:59 +01:00
Milan Hanajik bbffc3b406 TBF.UI.ResultsMI.SendAainDBAndWMSelectionForm as in 2.27 2021-11-29 22:17:45 +01:00
Milan Hanajik 9bc9db1792 DB.SensusOracle : Automatic WMTypeId assignment in progress. 2021-11-29 14:01:57 +01:00
Milan Hanajik 19c9e3a2da FileWriters,IperlLogger fixed in DesigMode == Based_on_procedure 2021-11-28 07:58:16 +01:00
Milan Hanajik 9a79ff1344 Scales.MettlerToledo : SICS command I4 : Zero length scale S/N is accepted, ver. 3.1.1814 2021-11-26 14:14:26 +01:00
Milan Hanajik 021f17c774 SharedDatabase.Entities.Part.CodeType and CodeForm --> sbyte, ver. 3.1.1813 2021-11-26 10:33:21 +01:00
Milan Hanajik 513c808f2b OrderManagement : barcode size, State and RA sort orders, EditOrderDlg localization, ver. 3.0.3 2021-11-22 23:31:25 +01:00
Milan Hanajik 09a0968b76 Workflow used in DataEntry.S620, LaserMarking stored to WaterMeter.Remark. 2021-11-18 14:54:03 +01:00
Milan Hanajik 351157dbba LaserMarking added to OrderInfo, OrderInfo printing, bug fixes. 2021-11-18 14:53:12 +01:00
Milan Hanajik 0494054171 Yet more MainWnd, MainSeq, etc. changes,ver. 3.1.1811 2021-11-18 14:53:12 +01:00
Milan Hanajik 587f6dffd0 More MainWnd, MainSeq, DataEntry.S620 and OrderManagement changes, ver. 3.1.1810 2021-11-18 14:53:12 +01:00
Milan Hanajik a35716733d MainWnd and DataEntry.S620 changes 2021-11-18 14:53:12 +01:00
Milan Hanajik 44761ff411 OrderManagement project added, ver. 3.1.1809 2021-11-18 14:53:11 +01:00
Milan Hanajik 5f7a80b826 SharedDatabase : OrderInfo table modified. 2021-11-18 14:53:11 +01:00
Milan Hanajik 99337ba7d9 Results.Output.Printers.PrintersCommon --> Common.Printers.PrintersCommon 2021-11-18 14:53:11 +01:00
1486 changed files with 519878 additions and 62098 deletions
+30 -18
View File
@@ -2,6 +2,8 @@ Common/bin/
Common/obj/
Config/bin/
Config/obj/
DataMatrix4Net/bin/
DataMatrix4Net/obj/
DataStreamInterface/bin/
DataStreamInterface/obj/
Decrypt/bin/
@@ -14,28 +16,36 @@ Encrypt/bin/
Encrypt/obj/
EventViewer/bin/
EventViewer/obj/
Events/bin/
Events/obj/
FeatureVectorCalculator/bin/
FeatureVectorCalculator/obj/
GemCard/bin
GemCard/obj
GenCode128/bin
GenCode128/obj
GraphLib/bin
GraphLib/obj
MergeResultsDBs/bin
MergeResultsDBs/obj
TracingDB/bin
TracingDB/obj
ResetBatchNr/bin
ResetBatchNr/obj
RestClient/bin
RestClient/obj
GemCard/bin/
GemCard/obj/
GenCode128/bin/
GenCode128/obj/
GenericTest/bin/
GenericTest/obj/
GraphLib/bin/
GraphLib/obj/
MergeResultsDBs/bin/
MergeResultsDBs/obj/
OrderManagement/bin/
OrderManagement/obj/
ProductionTracing/bin/
ProductionTracing/obj/
RecordProcessing/bin/
RecordProcessing/obj/
ResetBatchNr/bin/
ResetBatchNr/obj/
RestClient/bin/
RestClient/obj/
Results/bin/
Results/obj/
ResultsBrowser/bin/
ResultsBrowser/obj/
ResultsParser/bin/
ResultsParser/obj/
S640TestApp/bin/
S640TestApp/obj/
SharedDatabase/bin
SharedDatabase/obj
SchematicDrawing/bin
@@ -48,10 +58,12 @@ ToFirstMonitor/bin/
ToFirstMonitor/obj/
ToSecondMonitor/bin/
ToSecondMonitor/obj/
Users/bin/
Users/obj/
UserManagement/bin/
UserManagement/obj/
WorkflowConfigurator/bin/
WorkflowConfigurator/obj/
Workplace/bin/
Workplace/obj/
.vs/
*.suo
*.bak
+1
View File
@@ -0,0 +1 @@
TBF
+22
View File
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="dataSourceStorageLocal" created-in="RD-241.19072.26">
<data-source name="@localhost" uuid="2f1012d5-a96b-44db-ad21-032f973c657f">
<database-info product="MySQL" version="5.5.39" jdbc-version="4.2" driver-name="MySQL Connector/J" driver-version="mysql-connector-j-8.2.0 (Revision: 06a1f724497fd81c6a659131fda822c9e5085b6c)" dbms="MYSQL" exact-version="5.5.39" exact-driver-version="8.2">
<extra-name-characters>#@</extra-name-characters>
<identifier-quote-string>`</identifier-quote-string>
</database-info>
<case-sensitivity plain-identifiers="lower" quoted-identifiers="lower" />
<user-name>root</user-name>
<schema-mapping>
<introspection-scope>
<node kind="schema">
<name qname="@" />
<name qname="jor" />
<name qname="jor-r" />
</node>
</introspection-scope>
</schema-mapping>
</data-source>
</component>
</project>
+13
View File
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
<data-source source="LOCAL" name="@localhost" uuid="2f1012d5-a96b-44db-ad21-032f973c657f">
<driver-ref>mysql.8</driver-ref>
<synchronize>true</synchronize>
<configured-by-url>true</configured-by-url>
<jdbc-driver>com.mysql.cj.jdbc.Driver</jdbc-driver>
<jdbc-url>jdbc:mysql://localhost:3306</jdbc-url>
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</component>
</project>
@@ -0,0 +1,2 @@
#n:information_schema
!<md> [null, 0, null, null, -2147483648, -2147483648]
@@ -0,0 +1,2 @@
#n:jor-r
!<md> [0, 0, null, null, -2147483648, -2147483648]
@@ -0,0 +1,2 @@
#n:jor
!<md> [0, 0, null, null, -2147483648, -2147483648]
@@ -0,0 +1,2 @@
#n:mysql
!<md> [null, 0, null, null, -2147483648, -2147483648]
@@ -0,0 +1,2 @@
#n:performance_schema
!<md> [null, 0, null, null, -2147483648, -2147483648]
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RiderProjectSettingsUpdater">
<option name="vcsConfiguration" value="2" />
</component>
</project>
@@ -0,0 +1,4 @@
<changelist name="Add_combo_box_for_box_input" date="1723454080052" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/Add_combo_box_for_box_input/shelved.patch" />
<option name="DESCRIPTION" value="Add combo box for box input" />
</changelist>
File diff suppressed because one or more lines are too long
@@ -0,0 +1,4 @@
<changelist name="AdjustableMeterTest_cs_unit_Test" date="1708186855829" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/AdjustableMeterTest_cs_unit_Test/shelved.patch" />
<option name="DESCRIPTION" value="AdjustableMeterTest.cs unit Test" />
</changelist>
@@ -0,0 +1,97 @@
Index: TBFTests/Rig/Modbus/Meret/AdjustableScale/AdjustableMeterTest.cs
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBFTests/Rig/Modbus/Meret/AdjustableScale/AdjustableMeterTest.cs b/TBFTests/Rig/Modbus/Meret/AdjustableScale/AdjustableMeterTest.cs
new file mode 100644
--- /dev/null (date 1706131720128)
+++ b/TBFTests/Rig/Modbus/Meret/AdjustableScale/AdjustableMeterTest.cs (date 1706131720128)
@@ -0,0 +1,86 @@
+using System;
+using System.Collections.Generic;
+using Config.Entities;
+using JetBrains.Annotations;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using TBF.Rig.Modbus.Meret.AdjustableScale;
+
+namespace TBFTests.Rig.Modbus.Meret.AdjustableScale
+{
+ [TestClass]
+ [TestSubject(typeof(AdjustableMeter))]
+ public class AdjustableMeterTest
+ {
+
+ /**
+ * new typ of linear correction - limit less from Hi
+ */
+ [TestMethod]
+ public void GetCorrection()
+ {
+
+ double rawValue, expectedVal;
+ IList<MeasurementCorrection> corrections;
+
+ corrections = new List<MeasurementCorrection>(2);
+ MeasurementCorrection Lo, Hi;
+ Lo = new MeasurementCorrection(1);
+ Lo.Measurement = 0.00; //CorrectionValLo;
+ Lo.Correction = 0.0F; //MsrdValLimLo;
+ corrections.Add(Lo);
+ Hi = new MeasurementCorrection(2);
+ Hi.Measurement = 0.22F;//CorrectionValHi;
+ Hi.Correction = 2.0F;//MsrdValLimHi;
+ corrections.Add(Hi);
+
+
+ expectedVal = Lo.Correction;
+ rawValue = Lo.Measurement; //Ampers
+
+ double CorrectionVal = AdjustableMeter.GetCorrectionLimitLessHi(rawValue, corrections);
+ Console.WriteLine("{0} Correction - rawValue: {1} CorrectionVal: {2}", "TEST " + rawValue, rawValue, CorrectionVal);
+ Assert.IsTrue(expectedVal == CorrectionVal);
+
+ expectedVal = Hi.Correction;
+ rawValue = Hi.Measurement; //Ampers
+
+ CorrectionVal = AdjustableMeter.GetCorrectionLimitLessHi(rawValue, corrections);
+ Console.WriteLine("{0} Correction - rawValue: {1} CorrectionVal: {2}", "TEST " + rawValue, rawValue, CorrectionVal);
+ Assert.IsTrue(expectedVal == CorrectionVal);
+
+ double toler = 0.01;
+ expectedVal = Hi.Correction * 2.0;
+ rawValue = Hi.Measurement * 2.0; //Ampers
+
+ CorrectionVal = AdjustableMeter.GetCorrectionLimitLessHi(rawValue, corrections);
+ Console.WriteLine("{0} Correction - rawValue: {1} CorrectionVal: {2}", "TEST " + rawValue, rawValue, CorrectionVal);
+ Assert.IsTrue((expectedVal + toler) >= CorrectionVal && (expectedVal - toler) <= CorrectionVal);
+
+ corrections = new List<MeasurementCorrection>(2);
+ Lo = new MeasurementCorrection(1);
+ Lo.Measurement = 0.04; //CorrectionValLo;
+ Lo.Correction = 0.0F; //MsrdValLimLo;
+ corrections.Add(Lo);
+ Hi = new MeasurementCorrection(2);
+ Hi.Measurement = 0.22F;//CorrectionValHi;
+ Hi.Correction = 2.0F;//MsrdValLimHi;
+ corrections.Add(Hi);
+
+ toler = 0.3;
+ expectedVal = 1.24; //bar
+ rawValue = 0.152; //Ampers
+
+ CorrectionVal = AdjustableMeter.GetCorrectionLimitLessHi(rawValue, corrections);
+ Console.WriteLine("{0} Correction - rawValue: {1} CorrectionVal: {2}", "TEST " + rawValue, rawValue, CorrectionVal);
+ Assert.IsTrue((expectedVal + toler) >= CorrectionVal && (expectedVal - toler) <= CorrectionVal);
+
+ toler = 0.0001;
+ expectedVal = 1.0;
+ rawValue = Lo.Measurement + ((Hi.Measurement - Lo.Measurement) / 2.0); //Ampers 0.129999999403954
+
+ CorrectionVal = AdjustableMeter.GetCorrectionLimitLessHi(rawValue, corrections);
+ Console.WriteLine("{0} Correction - rawValue: {1} CorrectionVal: {2}", "TEST " + rawValue, rawValue, CorrectionVal);
+ Assert.IsTrue((expectedVal + toler) >= CorrectionVal && (expectedVal - toler) <= CorrectionVal);
+ }
+ }
+}
\ No newline at end of file
@@ -0,0 +1,4 @@
<changelist name="DB_test_-_purchase_order" date="1725258409183" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/DB_test_-_purchase_order/shelved.patch" />
<option name="DESCRIPTION" value="DB test - purchase order" />
</changelist>
File diff suppressed because one or more lines are too long
@@ -0,0 +1,4 @@
<changelist name="Frequency_Meter_From_UniCB" date="1708416562473" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/Frequency_Meter_From_UniCB/shelved.patch" />
<option name="DESCRIPTION" value="Frequency Meter From UniCB" />
</changelist>
@@ -0,0 +1,687 @@
Index: TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfg.cs
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfg.cs b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfg.cs
new file mode 100644
--- /dev/null (date 1708352606823)
+++ b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfg.cs (date 1708352606823)
@@ -0,0 +1,51 @@
+using System.Collections.Generic;
+using System.Xml.Serialization;
+using Common;
+using Config.Entities;
+using TBF.Rig.Generic;
+
+namespace TBF.Rig.RegisterReaders.FrequencyMeterFromUniCB
+{
+ public class RRCfg : ComponentCfgBase, Generic.IChildComponentCfg
+ {
+
+ public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(RRCfg) })[0];
+ public override XmlSerializer GetSerializer() { return Serializer; }
+
+ IComponentCfgCtrl IComponentCfg.GetControl(IList<Component> cmpntEntities) { return new RRCfgCtrl(); }
+
+ ///
+ /// Serialized parameters
+ ///
+ public int Position; /// 1..nrWaterMeters
+
+ /// <summary> Procedure parameters </summary>
+ [XmlIgnore]
+ public RRProcParams ProcParams;
+ public override IParamsProvider GetRuntimeProcParamsProvider() { return ProcParams; }
+ public override IParamsProvider CreateProcParamsProvider() { return new RRProcParams(true); }
+
+ /// Private parameterless constructor invoked by all other (public) constructors
+ RRCfg()
+ {
+ ProcParams = new RRProcParams(true);
+ }
+
+ public RRCfg(string name, IComponentFactory factory)
+ : this()
+ {
+ Name = name;
+ Factory = factory;
+ ParentName = "UniCB";
+ Position = 1;
+ }
+
+ string IComponentCfg.ToString(int i)
+ {
+ return string.Format("Name={0}, Parent={1}, Position={2}",
+ Name,
+ (string.IsNullOrEmpty(ParentName) ? "-" : ParentName),
+ Position);
+ }
+ }
+}
\ No newline at end of file
Index: TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.cs
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.cs b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.cs
new file mode 100644
--- /dev/null (date 1708352608817)
+++ b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.cs (date 1708352608817)
@@ -0,0 +1,106 @@
+///
+/// Copyright (c) 2021 Sensus Slovensko a.s.
+///
+using System;
+using System.Windows.Forms;
+using Common;
+using TBF.Rig.Generic;
+using TBF.UI.Bench.Components;
+
+namespace TBF.Rig.RegisterReaders.FrequencyMeterFromUniCB
+{
+ public partial class RRCfgCtrl : UserControl, IComponentCfgCtrl
+ {
+ ComponentParametersDlg parent;
+
+ bool IComponentCfgCtrl.ShowMore { get { return false; } }
+
+ RRCfg config;
+
+ IComponentCfg IComponentCfgCtrl.Config
+ {
+ get { return config as IComponentCfg; }
+ set
+ {
+ config = value as RRCfg;
+ Redraw();
+ }
+ }
+
+ public RRCfgCtrl()
+ {
+ InitializeComponent();
+ }
+
+ private void RegisterReaderCfgCtrl_Load(object sender, EventArgs e)
+ {
+ parent = ParentForm as ComponentParametersDlg;
+ if (parent == null) return;
+
+ if (parent.CmpntEntities != null)
+ {
+ foreach (var cmpnt in parent.CmpntEntities)
+ {
+ if (TbfComponents.CmpntFactoryFromClassName(cmpnt.ClassName) is ControlBoard.Uni.Factory)
+ {
+ parentNameComboBox.Items.Add(cmpnt.Name);
+ }
+ }
+ }
+
+ Redraw();
+ }
+
+ void IComponentCfgCtrl.Closing()
+ {
+ }
+
+ void Redraw()
+ {
+ if (config == null) return; /// Control was not loaded, settings were not changed
+
+ componentNameLabel.Text = config.Factory.ClassName;
+ nameTextBox.Text = config.Name;
+ parentNameComboBox.Text = string.IsNullOrEmpty(config.ParentName) ? "---" : config.ParentName;
+ positionTextBox.Text = config.Position.ToString();
+ }
+
+ void IComponentCfgCtrl.Unlock()
+ {
+ nameTextBox.Enabled = true;
+ parentNameComboBox.Enabled = true;
+ positionTextBox.Enabled = true;
+ }
+
+ CfgUpdateFlags IComponentCfgCtrl.VerifyCfg(ref string message)
+ {
+ CfgUpdateFlags flags = CfgUpdateFlags.None;
+
+ int dummy;
+ if (!parentNameComboBox.Items.Contains(parentNameComboBox.Text))
+ {
+ flags |= CfgUpdateFlags.Error;
+ message += Environment.NewLine + "Invalid 'Parent Name'";
+ }
+ if (!int.TryParse(positionTextBox.Text, out dummy) || (dummy < 1))
+ {
+ flags |= CfgUpdateFlags.Error;
+ message += Environment.NewLine + "'Position' should be >= 1";
+ }
+ return flags;
+ }
+
+ CfgUpdateFlags IComponentCfgCtrl.UpdateCfg()
+ {
+ CfgUpdateFlags flags = CfgUpdateFlags.RestartRqrd;
+
+ if (config == null) return CfgUpdateFlags.Error; /// Control was not loaded, settings were not changed
+
+ config.Name = nameTextBox.Text;
+ config.ParentName = parentNameComboBox.Text.Equals("---") ? string.Empty : parentNameComboBox.Text;
+ config.Position = int.Parse(positionTextBox.Text);
+
+ return flags;
+ }
+ }
+}
Index: TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.designer.cs
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.designer.cs b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.designer.cs
new file mode 100644
--- /dev/null (date 1708348624609)
+++ b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.designer.cs (date 1708348624609)
@@ -0,0 +1,133 @@
+///
+/// Copyright (c) 2021 Sensus Slovensko a.s.
+///
+namespace TBF.Rig.RegisterReaders.FrequencyMeterFromUniCB
+{
+ partial class RRCfgCtrl
+ {
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.IContainer components = null;
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ this.positionTextBox = new System.Windows.Forms.TextBox();
+ this.positionLabel = new System.Windows.Forms.Label();
+ this.parentNameLabel = new System.Windows.Forms.Label();
+ this.nameTextBox = new System.Windows.Forms.TextBox();
+ this.nameLabel = new System.Windows.Forms.Label();
+ this.componentNameLabel = new System.Windows.Forms.Label();
+ this.parentNameComboBox = new System.Windows.Forms.ComboBox();
+ this.SuspendLayout();
+ //
+ // positionTextBox
+ //
+ this.positionTextBox.Enabled = false;
+ this.positionTextBox.Location = new System.Drawing.Point(136, 119);
+ this.positionTextBox.Name = "positionTextBox";
+ this.positionTextBox.Size = new System.Drawing.Size(46, 20);
+ this.positionTextBox.TabIndex = 6;
+ //
+ // positionLabel
+ //
+ this.positionLabel.AutoSize = true;
+ this.positionLabel.Location = new System.Drawing.Point(26, 122);
+ this.positionLabel.Name = "positionLabel";
+ this.positionLabel.Size = new System.Drawing.Size(44, 13);
+ this.positionLabel.TabIndex = 5;
+ this.positionLabel.Text = "Position";
+ //
+ // parentNameLabel
+ //
+ this.parentNameLabel.AutoSize = true;
+ this.parentNameLabel.Location = new System.Drawing.Point(26, 96);
+ this.parentNameLabel.Name = "parentNameLabel";
+ this.parentNameLabel.Size = new System.Drawing.Size(69, 13);
+ this.parentNameLabel.TabIndex = 3;
+ this.parentNameLabel.Text = "Parent Name";
+ //
+ // nameTextBox
+ //
+ this.nameTextBox.Enabled = false;
+ this.nameTextBox.Location = new System.Drawing.Point(136, 67);
+ this.nameTextBox.Name = "nameTextBox";
+ this.nameTextBox.Size = new System.Drawing.Size(130, 20);
+ this.nameTextBox.TabIndex = 2;
+ //
+ // nameLabel
+ //
+ this.nameLabel.AutoSize = true;
+ this.nameLabel.Location = new System.Drawing.Point(26, 70);
+ this.nameLabel.Name = "nameLabel";
+ this.nameLabel.Size = new System.Drawing.Size(35, 13);
+ this.nameLabel.TabIndex = 1;
+ this.nameLabel.Text = "Name";
+ //
+ // componentNameLabel
+ //
+ this.componentNameLabel.AutoSize = true;
+ this.componentNameLabel.Location = new System.Drawing.Point(133, 43);
+ this.componentNameLabel.Name = "componentNameLabel";
+ this.componentNameLabel.Size = new System.Drawing.Size(83, 13);
+ this.componentNameLabel.TabIndex = 0;
+ this.componentNameLabel.Text = "ComonentName";
+ //
+ // parentNameComboBox
+ //
+ this.parentNameComboBox.Enabled = false;
+ this.parentNameComboBox.FormattingEnabled = true;
+ this.parentNameComboBox.Location = new System.Drawing.Point(136, 93);
+ this.parentNameComboBox.Name = "parentNameComboBox";
+ this.parentNameComboBox.Size = new System.Drawing.Size(130, 21);
+ this.parentNameComboBox.TabIndex = 4;
+ //
+ // RegisterReaderCfgCtrl
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.Controls.Add(this.parentNameComboBox);
+ this.Controls.Add(this.positionTextBox);
+ this.Controls.Add(this.positionLabel);
+ this.Controls.Add(this.parentNameLabel);
+ this.Controls.Add(this.nameTextBox);
+ this.Controls.Add(this.nameLabel);
+ this.Controls.Add(this.componentNameLabel);
+ this.Name = "RegisterReaderCfgCtrl";
+ this.Size = new System.Drawing.Size(300, 200);
+ this.Load += new System.EventHandler(this.RegisterReaderCfgCtrl_Load);
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.TextBox positionTextBox;
+ private System.Windows.Forms.Label positionLabel;
+ private System.Windows.Forms.Label parentNameLabel;
+ private System.Windows.Forms.TextBox nameTextBox;
+ private System.Windows.Forms.Label nameLabel;
+ private System.Windows.Forms.Label componentNameLabel;
+ private System.Windows.Forms.ComboBox parentNameComboBox;
+ }
+}
Index: TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.resx
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.resx b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.resx
new file mode 100644
--- /dev/null (date 1703243321441)
+++ b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRCfgCtrl.resx (date 1703243321441)
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" use="required" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+</root>
\ No newline at end of file
Index: TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRProcParams.cs
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRProcParams.cs b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRProcParams.cs
new file mode 100644
--- /dev/null (date 1708352610233)
+++ b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/RRProcParams.cs (date 1708352610233)
@@ -0,0 +1,132 @@
+///
+/// Copyright (c) 2021 Sensus Slovensko a.s.
+///
+using System;
+using System.IO;
+using System.Text;
+using System.Xml.Serialization;
+using Common;
+using Config.Entities;
+using TBF.Rig.Generic;
+using TBF.Resources;
+
+namespace TBF.Rig.RegisterReaders.FrequencyMeterFromUniCB
+{
+ public class RRProcParams : ProcedureParamsBase, IParamsProvider, IProcedureParams
+ {
+ public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(RRProcParams) })[0];
+ public override XmlSerializer GetSerializer() { return Serializer; }
+
+ public double PulsesPerLtr; /// [l^-1]
+ public int Filter;
+
+ public override void InitializeAll()
+ {
+ PulsesPerLtr = 1.0;
+ Filter = 0;
+ }
+
+ string[] paramNames = new string[]
+ {
+ Strings.PulsesPerLtr,
+ Strings.Filter,
+ };
+ public override string ParamName(int i) { return paramNames[i]; }
+ public override int ParamsCount() { return paramNames.Length; }
+
+ public override string ToString(int i)
+ {
+ switch (i)
+ {
+ case 0: return PulsesPerLtr.ToString();
+ case 1: return Filter.ToString();
+ default: return string.Empty;
+ }
+ }
+
+ /// Retrieves parameters from UI controls
+ CfgUpdateFlags IParamsProvider.UpdateParam(int i, string strValue)
+ {
+ switch (i)
+ {
+ case 0: PulsesPerLtr = Utils.ParseUDouble(strValue); return CfgUpdateFlags.None;
+ case 1: Filter = int.Parse(strValue); return CfgUpdateFlags.None;
+ default: return CfgUpdateFlags.None;
+ }
+ }
+
+ /// Verifies whether strings in UI controls represent valid parameters
+ bool IParamsProvider.ValidateParam(int i, string strValue, out string message)
+ {
+ message = string.Empty;
+
+ double dummy;
+ int idummy;
+ switch (i)
+ {
+ case 0:
+ if (Utils.TryParseUDouble(strValue, out dummy)) return true;
+ break;
+
+ case 1:
+ if (int.TryParse(strValue, out idummy) && (idummy >= 0)) return true;
+ break;
+
+ default:
+ message = "Invalid index";
+ return false;
+ }
+
+ message = ParamName(i) + " is invalid";
+ return false;
+ }
+
+ void CopyContentTo(RRProcParams prms)
+ {
+ prms.PulsesPerLtr = this.PulsesPerLtr;
+ prms.Filter = this.Filter;
+ }
+
+ IParamsProvider IParamsProvider.Clone()
+ {
+ RRProcParams pars = new RRProcParams();
+ CopyContentTo(pars);
+ return pars;
+ }
+
+ public override void UpdateFromDbEntity(ComponentProcedure dbEntity)
+ {
+ if (dbEntity == null) return;
+ try
+ {
+ RRProcParams tmp = Serializer.Deserialize(new StringReader(dbEntity.Parameters)) as RRProcParams;
+
+ procedureParamsEntity = dbEntity;
+ componentName = dbEntity.CmpntName;
+ procedure = dbEntity.Procedure;
+
+ if (tmp != null) tmp.CopyContentTo(this);
+ }
+ catch
+ {
+ }
+ }
+
+
+ public RRProcParams()
+ {
+ }
+
+ public RRProcParams(bool initialize)
+ {
+ if (initialize) InitializeAll();
+ }
+
+ public RRProcParams(ComponentProcedure procedureParamsEntity, string componentName, Procedure procedure)
+ {
+ this.procedureParamsEntity = procedureParamsEntity;
+ this.componentName = componentName;
+ this.procedure = procedure;
+ }
+ }
+}
Index: TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/Factory.cs
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/Factory.cs b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/Factory.cs
new file mode 100644
--- /dev/null (date 1708352610236)
+++ b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/Factory.cs (date 1708352610236)
@@ -0,0 +1,24 @@
+using System.Collections.Generic;
+using Config.Entities;
+using TBF.Rig.Generic;
+
+namespace TBF.Rig.RegisterReaders.FrequencyMeterFromUniCB
+{
+ public class Factory : IComponentFactory
+ {
+ string IComponentFactory.ClassName { get { return GetType().Namespace.Substring(8); } }
+
+ public override string ToString() { return ClassName; }
+
+ IComponent IComponentFactory.DummyComponent() { return new FrequencyRegisterReader(); }
+
+ IComponent IComponentFactory.GetComponent(IComponentCfg cfg, IList<IComponent> components) { return new FrequencyRegisterReader(cfg, components); }
+
+ IComponentCfg IComponentFactory.DefaultConfig() { return new RRCfg("Puls", this); }
+
+ IComponentCfg IComponentFactory.CmpntCfgFromCmpntEntity(Component component)
+ {
+ throw new System.NotImplementedException();
+ }
+ }
+}
\ No newline at end of file
Index: TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/FrequencyRegisterReader.cs
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/FrequencyRegisterReader.cs b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/FrequencyRegisterReader.cs
new file mode 100644
--- /dev/null (date 1708352608953)
+++ b/TBF/Rig/RegisterReaders/FrequencyMeterFromUniCB/FrequencyRegisterReader.cs (date 1708352608953)
@@ -0,0 +1,47 @@
+using System;
+using System.Collections.Generic;
+using Common;
+using log4net;
+using TBF.Rig.GenericDevices;
+
+namespace TBF.Rig.RegisterReaders.FrequencyMeterFromUniCB
+{
+ public class FrequencyRegisterReader : ComponentBase, GenericDevices.IRegReader
+ {
+ private static readonly ILog log = LogManager.GetLogger(typeof(FrequencyRegisterReader));
+
+ public override string ToString() { return string.Format("{0}({1})", ClassName, Cfg.ToString(-1)); }
+
+ readonly RRCfg rrCfg;
+ readonly TBF.Rig.ControlBoard.IControlBoard cb;
+
+ int IRegReader.Position { get{ return rrCfg.Position; } }
+ Common.RegisterReaderType IRegReader.RegisterReaderType { get { return Common.RegisterReaderType.Pulses; } }
+ double IRegReader.PulsesPerLtr { get { return rrCfg.ProcParams.PulsesPerLtr; } }
+ double IRegReader.LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); ; } }
+ public int Filter { get { return rrCfg.ProcParams.Filter; } }
+
+ int IRegReader.WMPulses { get { return cb.PulsesWM(Position); } }
+ int IRegReader.WMRefPulses { get { return cb.RefPulsesWM(Position); } }
+ double IRegReader.WMVolume { get { return LtrsPerPulse * Convert.ToDouble(WMPulses); } }
+
+ double IRegReader.BeginWMState { get { return 0; } } /// Always 0
+ double IRegReader.EndWMState { get { return WMVolume; } } /// Derived from WMVolume
+
+
+ public FrequencyRegisterReader() { }
+
+ public FrequencyRegisterReader(Generic.IComponentCfg cfg, IList<Generic.IComponent> components)
+ : base(cfg)
+ {
+ rrCfg = cfg as RRCfg;
+
+ cb = TbfComponents.FindComponent(cfg.ParentName, components) as TBF.Rig.ControlBoard.IControlBoard;
+ if (cb == null) throw new Exception("Cannot find " + Name + " parent");
+
+ log.Warn(this.ToString());
+ }
+
+ public override void Initialize() { }
+ }
+}
\ No newline at end of file
+4
View File
@@ -0,0 +1,4 @@
<changelist name="NEXT_5_24_2024" date="1716547261313" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/NEXT_5_24_2024/shelved.patch" />
<option name="DESCRIPTION" value="NEXT_5/24/2024" />
</changelist>
File diff suppressed because one or more lines are too long
+4
View File
@@ -0,0 +1,4 @@
<changelist name="Pressure_meter_test" date="1704310942302" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/Pressure_meter_test/shelved.patch" />
<option name="DESCRIPTION" value="Pressure meter test" />
</changelist>
@@ -0,0 +1,156 @@
Index: TBFTests/Rig/Modbus/PressureMeter/AdjustableScale/PressureMeterTests.cs
===================================================================
diff --git a/TBFTests/Rig/Modbus/PressureMeter/AdjustableScale/PressureMeterTests.cs b/TBFTests/Rig/Modbus/PressureMeter/AdjustableScale/PressureMeterTests.cs
deleted file mode 100644
--- a/TBFTests/Rig/Modbus/PressureMeter/AdjustableScale/PressureMeterTests.cs (revision 0ad8bc6d759d868e021fc7087d3db5ba55f6a354)
+++ /dev/null (revision 0ad8bc6d759d868e021fc7087d3db5ba55f6a354)
@@ -1,148 +0,0 @@
-using Microsoft.VisualStudio.TestTools.UnitTesting;
-using TBF.Rig.Modbus.PressureMeter.AdjustableScale;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using TBF.Rig.Generic;
-using Moq;
-
-
-
-
-namespace TBF.Rig.Modbus.PressureMeter.AdjustableScale.Tests
-{
- [TestClass()]
- public class PressureMeterTests
- {
-
-
-
- [TestMethod()]
- public void ToStringTest()
- {
- Factory factory = new Factory();
- IList<Generic.IComponent> list = new List<Generic.IComponent>();
- list.Add(factory.DummyComponent());
- PressureMeter meter = new PressureMeter(factory.DefaultConfig(), list);
-
- string str = meter.ToString();
- Assert.IsTrue(str == "Modbus.PressureMeter.AdjustableScale(Pr(Modbus) address=49)");
-
- }
-
- /* [TestMethod()]
- public void PressureMeterTest()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void PressureMeterTest1()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void InitializeTest()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void RunDeviceBeforeTest()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void RunDeviceAfterTest()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void StopDeviceTest()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void StopDevice2Test()
- {
- Assert.Fail();
- }*/
-
- class PressureMeterSpy : PressureMeter
- {
- public PressureMeterSpy(Generic.IComponentCfg cfg, IList<Generic.IComponent> components)
- :base(cfg, components)
- {
-
- }
-
- public new void InitModbus()
- {
- Console.Write("I am here!");
- }
-
- }
-
- [TestMethod()]
- public void ReadPressureTest()
- {
- Factory factory = new Factory();
- IList<Generic.IComponent> list = new List<Generic.IComponent>();
- list.Add(factory.DummyComponent());
-
-
-
- IComponentCfg componentCfg = factory.DefaultConfig();
- PressureMeterCfg pressureMeterCfg = (PressureMeterCfg) componentCfg;
-
- pressureMeterCfg.CorrectionValLo = 0.4;
- pressureMeterCfg.CorrectionValHi = 2.4;
- pressureMeterCfg.MsrdValLimHi = 2.0;
- pressureMeterCfg.MsrdValLimLo = 0.0;
-
- PressureMeterSpy meter = new PressureMeterSpy(componentCfg, list);
-
-
-
- meter.Initialize();
-
- double MeasuredVal = meter.MeasuredVal;
-
-
- double value = meter.ReadPressure();
- Assert.IsTrue(value == 0.0);
-
- }
-
- /*
- [TestMethod()]
- public void ReadPressureOpTest()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void ReadPressureOpTest1()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void ConditionNameTest()
- {
- Assert.Fail();
- }
-
- [TestMethod()]
- public void ConditionOpTest()
- {
- Assert.Fail();
- }*/
- }
-}
\ No newline at end of file
@@ -0,0 +1,4 @@
<changelist name="TBF_project_configuration_backup" date="1708187009519" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/TBF_project_configuration_backup/shelved.patch" />
<option name="DESCRIPTION" value="TBF project configuration backup" />
</changelist>
@@ -0,0 +1,55 @@
Index: TBF/app.config
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP
<+><?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<configuration>\r\n <configSections>\r\n <section name=\"oracle.manageddataaccess.client\"\r\n type=\"OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342\"/>\r\n </configSections>\r\n <startup>\r\n <supportedRuntime version=\"v4.0\" sku=\".NETFramework,Version=v4.7.2\"/>\r\n </startup>\r\n <system.data>\r\n <DbProviderFactories>\r\n <remove invariant=\"Oracle.ManagedDataAccess.Client\"/>\r\n <add name=\"ODP.NET, Managed Driver\" invariant=\"Oracle.ManagedDataAccess.Client\" description=\"Oracle Data Provider for .NET, Managed Driver\"\r\n type=\"Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342\"/>\r\n </DbProviderFactories>\r\n </system.data>\r\n <runtime>\r\n <assemblyBinding xmlns=\"urn:schemas-microsoft-com:asm.v1\">\r\n <dependentAssembly>\r\n <publisherPolicy apply=\"no\"/>\r\n <assemblyIdentity name=\"Oracle.ManagedDataAccess\" publicKeyToken=\"89b483f429c47342\" culture=\"neutral\"/>\r\n <bindingRedirect oldVersion=\"4.121.0.0 - 4.65535.65535.65535\" newVersion=\"4.122.19.1\"/>\r\n </dependentAssembly>\r\n </assemblyBinding>\r\n </runtime>\r\n <oracle.manageddataaccess.client>\r\n <version number=\"*\">\r\n <dataSources>\r\n <dataSource alias=\"SampleDataSource\" descriptor=\"(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) \"/>\r\n </dataSources>\r\n </version>\r\n </oracle.manageddataaccess.client>\r\n</configuration>\r\n
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/TBF/app.config b/TBF/app.config
--- a/TBF/app.config (revision 153d031125d1637c9f23cea9e25ecff9c68bae9b)
+++ b/TBF/app.config (date 1707773182036)
@@ -1,32 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
- <section name="oracle.manageddataaccess.client"
- type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
+ <section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342" />
</configSections>
<startup>
- <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
+ <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
</startup>
<system.data>
<DbProviderFactories>
- <remove invariant="Oracle.ManagedDataAccess.Client"/>
- <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver"
- type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
+ <remove invariant="Oracle.ManagedDataAccess.Client" />
+ <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342" />
</DbProviderFactories>
</system.data>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
- <publisherPolicy apply="no"/>
- <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral"/>
- <bindingRedirect oldVersion="4.121.0.0 - 4.65535.65535.65535" newVersion="4.122.19.1"/>
+ <publisherPolicy apply="no" />
+ <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral" />
+ <bindingRedirect oldVersion="4.121.0.0 - 4.65535.65535.65535" newVersion="4.122.19.1" />
+ </dependentAssembly>
+ <dependentAssembly>
+ <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+ <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<oracle.manageddataaccess.client>
<version number="*">
<dataSources>
- <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) "/>
+ <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) " />
</dataSources>
</version>
</oracle.manageddataaccess.client>
@@ -0,0 +1,4 @@
<changelist name="TBF_project_configuration_backup1" date="1708187045753" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/TBF_project_configuration_backup1/shelved.patch" />
<option name="DESCRIPTION" value="TBF project configuration backup" />
</changelist>
File diff suppressed because one or more lines are too long
@@ -0,0 +1,4 @@
<changelist name="TestPDFSharpToUseGraphics" date="1708186637637" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/TestPDFSharpToUseGraphics/shelved.patch" />
<option name="DESCRIPTION" value="TestPDFSharpToUseGraphics" />
</changelist>
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,4 @@
<changelist name="Test_set_all_open,_closed_valves" date="1710251068900" recycled="false">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/Test_set_all_open,_closed_valves/shelved.patch" />
<option name="DESCRIPTION" value="Test set all open, closed valves" />
</changelist>
File diff suppressed because one or more lines are too long
@@ -0,0 +1,4 @@
<changelist name="Uncommitted_changes_before_Checkout_at_10_11_2024_10_19_AM_[Changes]" date="1728634772275" recycled="false" toDelete="true">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/Uncommitted_changes_before_Checkout_at_10_11_2024_10_19_AM_[Changes]/shelved.patch" />
<option name="DESCRIPTION" value="Uncommitted changes before Checkout at 10/11/2024 10:19 AM [Changes]" />
</changelist>
File diff suppressed because one or more lines are too long
@@ -0,0 +1,4 @@
<changelist name="Uncommitted_changes_before_Checkout_at_10_11_2024_10_36_AM_[Changes]" date="1728635764918" recycled="false" toDelete="true">
<option name="PATH" value="$PROJECT_DIR$/.idea/.idea.TBF/.idea/shelf/Uncommitted_changes_before_Checkout_at_10_11_2024_10_36_AM_[Changes]/shelved.patch" />
<option name="DESCRIPTION" value="Uncommitted changes before Checkout at 10/11/2024 10:36 AM [Changes]" />
</changelist>

Some files were not shown because too many files have changed in this diff Show More