pychemstation 0.8.2__py3-none-any.whl → 0.10.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. pychemstation/analysis/__init__.py +4 -0
  2. pychemstation/analysis/base_spectrum.py +9 -9
  3. pychemstation/analysis/process_report.py +13 -7
  4. pychemstation/analysis/utils.py +1 -3
  5. pychemstation/control/__init__.py +4 -0
  6. pychemstation/control/comm.py +206 -0
  7. pychemstation/control/controllers/__init__.py +6 -0
  8. pychemstation/control/controllers/comm.py +12 -5
  9. pychemstation/control/controllers/devices/column.py +12 -0
  10. pychemstation/control/controllers/devices/dad.py +0 -0
  11. pychemstation/control/controllers/devices/device.py +10 -7
  12. pychemstation/control/controllers/devices/injector.py +18 -84
  13. pychemstation/control/controllers/devices/pump.py +43 -0
  14. pychemstation/control/controllers/method.py +338 -0
  15. pychemstation/control/controllers/sequence.py +190 -0
  16. pychemstation/control/controllers/table_controller.py +266 -0
  17. pychemstation/control/controllers/tables/method.py +35 -13
  18. pychemstation/control/controllers/tables/sequence.py +47 -38
  19. pychemstation/control/controllers/tables/table.py +46 -30
  20. pychemstation/control/hplc.py +27 -11
  21. pychemstation/control/table/__init__.py +3 -0
  22. pychemstation/control/table/method.py +274 -0
  23. pychemstation/control/table/sequence.py +210 -0
  24. pychemstation/control/table/table_controller.py +201 -0
  25. pychemstation/generated/dad_method.py +1 -1
  26. pychemstation/generated/pump_method.py +1 -1
  27. pychemstation/utils/chromatogram.py +2 -5
  28. pychemstation/utils/injector_types.py +1 -1
  29. pychemstation/utils/macro.py +3 -3
  30. pychemstation/utils/method_types.py +2 -2
  31. pychemstation/utils/num_utils.py +65 -0
  32. pychemstation/utils/parsing.py +1 -0
  33. pychemstation/utils/sequence_types.py +3 -3
  34. pychemstation/utils/spec_utils.py +304 -0
  35. {pychemstation-0.8.2.dist-info → pychemstation-0.10.0.dist-info}/METADATA +19 -7
  36. pychemstation-0.10.0.dist-info/RECORD +62 -0
  37. {pychemstation-0.8.2.dist-info → pychemstation-0.10.0.dist-info}/WHEEL +2 -1
  38. pychemstation-0.10.0.dist-info/top_level.txt +2 -0
  39. tests/__init__.py +0 -0
  40. tests/constants.py +134 -0
  41. tests/test_comb.py +136 -0
  42. tests/test_comm.py +65 -0
  43. tests/test_inj.py +39 -0
  44. tests/test_method.py +99 -0
  45. tests/test_nightly.py +80 -0
  46. tests/test_offline_stable.py +69 -0
  47. tests/test_online_stable.py +275 -0
  48. tests/test_proc_rep.py +52 -0
  49. tests/test_runs_stable.py +225 -0
  50. tests/test_sequence.py +125 -0
  51. tests/test_stable.py +276 -0
  52. pychemstation/control/README.md +0 -124
  53. pychemstation/control/controllers/README.md +0 -1
  54. pychemstation/out.txt +0 -145
  55. pychemstation/tests.ipynb +0 -310
  56. pychemstation-0.8.2.dist-info/RECORD +0 -39
  57. {pychemstation-0.8.2.dist-info → pychemstation-0.10.0.dist-info}/licenses/LICENSE +0 -0
tests/test_stable.py ADDED
@@ -0,0 +1,276 @@
1
+ import unittest
2
+
3
+ from pychemstation.utils.macro import *
4
+ from pychemstation.utils.tray_types import *
5
+ from tests.constants import *
6
+
7
+
8
+ class TestStable(unittest.TestCase):
9
+
10
+ def setUp(self):
11
+ self.hplc_controller = set_up_utils(242)
12
+
13
+ def test_status_check_standby(self):
14
+ self.hplc_controller.standby()
15
+ self.assertTrue(self.hplc_controller.status() in [HPLCAvailStatus.STANDBY, HPLCRunningStatus.NOTREADY])
16
+
17
+ def test_status_check_preprun(self):
18
+ self.hplc_controller.preprun()
19
+ self.assertTrue(self.hplc_controller.status() in [HPLCAvailStatus.PRERUN, HPLCAvailStatus.STANDBY,
20
+ HPLCRunningStatus.NOTREADY])
21
+
22
+ def test_send_command(self):
23
+ try:
24
+ self.hplc_controller.send(Command.GET_METHOD_CMD)
25
+ except Exception as e:
26
+ self.fail(f"Should not throw error: {e}")
27
+
28
+ def test_send_str(self):
29
+ try:
30
+ self.hplc_controller.send("Local TestNum")
31
+ self.hplc_controller.send("TestNum = 0")
32
+ self.hplc_controller.send("Print TestNum")
33
+ self.hplc_controller.send("response_num = TestNum")
34
+ self.hplc_controller.send("Print response_num")
35
+ except Exception as e:
36
+ self.fail(f"Should not throw error: {e}")
37
+
38
+ def test_get_num(self):
39
+ try:
40
+ self.hplc_controller.send("response_num = 10")
41
+ res = self.hplc_controller.receive().num_response
42
+ self.assertEqual(res, 10)
43
+ except Exception as e:
44
+ self.fail(f"Should not throw error: {e}")
45
+
46
+ def test_get_response(self):
47
+ try:
48
+ self.hplc_controller.switch_method(method_name=DEFAULT_METHOD)
49
+ self.hplc_controller.send(Command.GET_METHOD_CMD)
50
+ res = self.hplc_controller.receive()
51
+ self.assertTrue(DEFAULT_METHOD in res.string_response)
52
+ except Exception as e:
53
+ self.fail(f"Should not throw error: {e}")
54
+
55
+ def test_edit_method(self):
56
+ self.hplc_controller.method_controller.switch(DEFAULT_METHOD)
57
+ new_method = MethodDetails(name=DEFAULT_METHOD + ".M",
58
+ timetable=[TimeTableEntry(start_time=1.0,
59
+ organic_modifer=20.0,
60
+ flow=0.65),
61
+ TimeTableEntry(start_time=2.0,
62
+ organic_modifer=30.0,
63
+ flow=0.65),
64
+ TimeTableEntry(start_time=2.5,
65
+ organic_modifer=60.0,
66
+ flow=0.65),
67
+ TimeTableEntry(start_time=3.0,
68
+ organic_modifer=80.0,
69
+ flow=0.65),
70
+ TimeTableEntry(start_time=3.5,
71
+ organic_modifer=100.0,
72
+ flow=0.65)],
73
+ stop_time=4.0,
74
+ post_time=1.0,
75
+ params=HPLCMethodParams(organic_modifier=5.0, flow=0.65))
76
+ try:
77
+ self.hplc_controller.edit_method(new_method)
78
+ self.assertEqual(new_method, self.hplc_controller.load_method())
79
+ except Exception as e:
80
+ self.fail(f"Should have not failed: {e}")
81
+
82
+ def test_load_method(self):
83
+ self.hplc_controller.method_controller.switch(DEFAULT_METHOD)
84
+ new_method = gen_rand_method()
85
+ try:
86
+ self.hplc_controller.edit_method(new_method)
87
+ loaded_method = self.hplc_controller.load_method()
88
+ self.assertEqual(new_method.params.organic_modifier,
89
+ loaded_method.params.organic_modifier)
90
+ self.assertEqual(new_method.timetable[0].organic_modifer,
91
+ loaded_method.timetable[0].organic_modifer)
92
+ self.assertEqual(round(new_method.params.flow, 2),
93
+ round(loaded_method.params.flow, 2))
94
+ except Exception as e:
95
+ self.fail(f"Should have not failed: {e}")
96
+
97
+ def test_switch(self):
98
+ try:
99
+ self.hplc_controller.switch_sequence(sequence_name=DEFAULT_SEQUENCE)
100
+ except Exception as e:
101
+ self.fail(f"Should have not expected: {e}")
102
+
103
+ def test_read(self):
104
+ try:
105
+ self.hplc_controller.switch_sequence(sequence_name=DEFAULT_SEQUENCE)
106
+ table = self.hplc_controller.load_sequence()
107
+ self.assertTrue(table)
108
+ except Exception as e:
109
+ self.fail(f"Should have not expected: {e}")
110
+
111
+ def test_edit_entire_table(self):
112
+ self.hplc_controller.switch_sequence(sequence_name=DEFAULT_SEQUENCE)
113
+ seq_folder = self.hplc_controller.sequence_controller.src
114
+ meth_path = os.path.join(seq_folder, DEFAULT_METHOD)
115
+ try:
116
+ seq_table = SequenceTable(
117
+ name=DEFAULT_SEQUENCE,
118
+ rows=[
119
+ SequenceEntry(
120
+ vial_location=TenVialColumn.ONE,
121
+ method=meth_path,
122
+ num_inj=3,
123
+ inj_vol=4,
124
+ sample_name="Sampel1",
125
+ sample_type=SampleType.SAMPLE,
126
+ inj_source=InjectionSource.HIP_ALS
127
+ ),
128
+ SequenceEntry(
129
+ vial_location=FiftyFourVialPlate(plate=Plate.ONE, letter=Letter.A, num=Num.ONE),
130
+ method=meth_path,
131
+ num_inj=3,
132
+ inj_vol=4,
133
+ sample_name="Sampel2",
134
+ sample_type=SampleType.SAMPLE,
135
+ inj_source=InjectionSource.HIP_ALS
136
+ ),
137
+ SequenceEntry(
138
+ vial_location=FiftyFourVialPlate(plate=Plate.ONE, letter=Letter.A, num=Num.TWO),
139
+ method=meth_path,
140
+ num_inj=3,
141
+ inj_vol=4,
142
+ sample_name="Sampel2",
143
+ sample_type=SampleType.SAMPLE,
144
+ inj_source=InjectionSource.HIP_ALS
145
+ ),
146
+ SequenceEntry(
147
+ vial_location=FiftyFourVialPlate(plate=Plate.ONE, letter=Letter.A, num=Num.THREE),
148
+ method=meth_path,
149
+ num_inj=3,
150
+ inj_vol=4,
151
+ sample_name="Sampel2",
152
+ sample_type=SampleType.SAMPLE,
153
+ inj_source=InjectionSource.HIP_ALS
154
+ )
155
+ ]
156
+ )
157
+ self.hplc_controller.edit_sequence(seq_table)
158
+ self.assertEqual(seq_table,
159
+ self.hplc_controller.load_sequence())
160
+ except Exception:
161
+ self.fail("Should have not occured")
162
+
163
+ def test_edit_entire_table_less_rows(self):
164
+ self.hplc_controller.switch_sequence(sequence_name=DEFAULT_SEQUENCE)
165
+ try:
166
+ seq_table = SequenceTable(
167
+ name=DEFAULT_SEQUENCE,
168
+ rows=[
169
+ SequenceEntry(
170
+ vial_location=TenVialColumn.TEN,
171
+ method=DEFAULT_METHOD,
172
+ num_inj=3,
173
+ inj_vol=4,
174
+ sample_name="Sampel2",
175
+ sample_type=SampleType.SAMPLE,
176
+ inj_source=InjectionSource.HIP_ALS
177
+ ),
178
+ SequenceEntry(
179
+ vial_location=TenVialColumn.THREE,
180
+ method=DEFAULT_METHOD,
181
+ num_inj=3,
182
+ inj_vol=4,
183
+ sample_name="Sampel2",
184
+ sample_type=SampleType.SAMPLE,
185
+ inj_source=InjectionSource.HIP_ALS
186
+ )
187
+ ]
188
+ )
189
+ self.hplc_controller.edit_sequence(seq_table)
190
+ except Exception:
191
+ self.fail("Should have not occured")
192
+
193
+ def test_load(self):
194
+ try:
195
+ seq = self.hplc_controller.load_sequence()
196
+ self.assertTrue(len(seq.rows) > 0)
197
+ except Exception as e:
198
+ self.fail(f"Should have not expected: {e}")
199
+
200
+ def test_tray_nums(self):
201
+ vial_locations = [
202
+ FiftyFourVialPlate.from_str('P1-A7'),
203
+ FiftyFourVialPlate.from_str('P1-B4'),
204
+ FiftyFourVialPlate.from_str('P1-C2'),
205
+ FiftyFourVialPlate.from_str('P1-D8'),
206
+ FiftyFourVialPlate.from_str('P1-E3'),
207
+ FiftyFourVialPlate.from_str('P1-F5'),
208
+ # plate 2
209
+ FiftyFourVialPlate.from_str('P2-A7'),
210
+ FiftyFourVialPlate.from_str('P2-B2'),
211
+ FiftyFourVialPlate.from_str('P2-C1'),
212
+ FiftyFourVialPlate.from_str('P2-D8'),
213
+ FiftyFourVialPlate.from_str('P2-E3'),
214
+ FiftyFourVialPlate.from_str('P2-F6'),
215
+ ]
216
+ seq_table = SequenceTable(
217
+ name=DEFAULT_SEQUENCE,
218
+ rows=[
219
+ SequenceEntry(
220
+ vial_location=v,
221
+ method=DEFAULT_METHOD,
222
+ num_inj=3,
223
+ inj_vol=4,
224
+ sample_name="Sampel2",
225
+ sample_type=SampleType.SAMPLE,
226
+ inj_source=InjectionSource.HIP_ALS
227
+ ) for v in vial_locations
228
+ ]
229
+ )
230
+ self.hplc_controller.edit_sequence(seq_table)
231
+ loaded_table = self.hplc_controller.load_sequence()
232
+ for i in range(len(vial_locations)):
233
+ self.assertTrue(vial_locations[i].value()
234
+ == seq_table.rows[i].vial_location.value()
235
+ == loaded_table.rows[i].vial_location.value())
236
+
237
+ def test_tray_nums_only(self):
238
+ vial_locations = [
239
+ # plate 2
240
+ FiftyFourVialPlate.from_str('P2-A7'),
241
+ FiftyFourVialPlate.from_str('P2-B2'),
242
+ FiftyFourVialPlate.from_str('P2-C1'),
243
+ FiftyFourVialPlate.from_str('P2-D8'),
244
+ FiftyFourVialPlate.from_str('P2-E3'),
245
+ FiftyFourVialPlate.from_str('P2-F6'),
246
+ # plate 1
247
+ FiftyFourVialPlate.from_str('P1-A7'),
248
+ FiftyFourVialPlate.from_str('P1-B4'),
249
+ FiftyFourVialPlate.from_str('P1-C2'),
250
+ FiftyFourVialPlate.from_str('P1-D8'),
251
+ FiftyFourVialPlate.from_str('P1-E3'),
252
+ FiftyFourVialPlate.from_str('P1-F5'),
253
+ ]
254
+
255
+ for i in range(len(vial_locations)):
256
+ self.assertEqual(vial_locations[i], FiftyFourVialPlate.from_int(vial_locations[i].value()))
257
+
258
+ def test_get_last_run_sequence(self):
259
+ path = "C:\\Users\\Public\\Documents\\ChemStation\\3\\Data\\hplc_testing 2025-03-24 16-28-16"
260
+ folder_name = "hplc_testing 2025-03-24 16-28"
261
+ self.hplc_controller.sequence_controller.data_files.append(SequenceDataFiles(dir=folder_name,
262
+ sequence_name=DEFAULT_SEQUENCE))
263
+ try:
264
+ most_recent_folder = self.hplc_controller.sequence_controller.retrieve_recent_data_files()
265
+ check_folder = self.hplc_controller.sequence_controller.fuzzy_match_most_recent_folder(
266
+ most_recent_folder=most_recent_folder)
267
+ self.assertEqual(check_folder.ok_value, path)
268
+ self.hplc_controller.sequence_controller.data_files[-1].dir = check_folder.ok_value
269
+ chrom = self.hplc_controller.get_last_run_sequence_data()
270
+ self.assertTrue(chrom)
271
+ except Exception:
272
+ self.fail()
273
+
274
+
275
+ if __name__ == '__main__':
276
+ unittest.main()
@@ -1,124 +0,0 @@
1
- # Examples of usecases
2
-
3
- ## Initialization
4
- ```python
5
- from pychemstation.control import HPLCController
6
-
7
- DEFAULT_METHOD_DIR = "C:\\ChemStation\\1\\Methods\\"
8
- DATA_DIR = "C:\\Users\\Public\\Documents\\ChemStation\\3\\Data"
9
- SEQUENCE_DIR = "C:\\USERS\\PUBLIC\\DOCUMENTS\\CHEMSTATION\\3\\Sequence"
10
- DEFAULT_COMMAND_PATH = "C:\\Users\\User\\Desktop\\Lucy\\"
11
-
12
- hplc_controller = HPLCController(data_dir=DATA_DIR,
13
- comm_dir=DEFAULT_COMMAND_PATH,
14
- method_dir=DEFAULT_METHOD_DIR,
15
- sequence_dir=SEQUENCE_DIR)
16
- ```
17
-
18
- ## Switching a method
19
- ```python
20
- hplc_controller.switch_method("General-Poroshell")
21
- ```
22
-
23
- ## Editing a method
24
-
25
- ```python
26
- from pychemstation.utils.method_types import *
27
-
28
- new_method = MethodDetails(
29
- name="My_Method",
30
- params=HPLCMethodParams(
31
- organic_modifier=7,
32
- flow=0.44),
33
- timetable=[
34
- TimeTableEntry(
35
- start_time=0.10,
36
- organic_modifer=7,
37
- flow=0.34
38
- ),
39
- TimeTableEntry(
40
- start_time=1,
41
- organic_modifer=99,
42
- flow=0.55
43
- )
44
- ],
45
- stop_time=5,
46
- post_time=2
47
- )
48
-
49
- hplc_controller.edit_method(new_method)
50
- ```
51
-
52
- ## Running a method and get data from last run method
53
- ```python
54
- hplc_controller.run_method(experiment_name="test_experiment")
55
- chrom = hplc_controller.get_last_run_method_data()
56
- channel_a_time = chrom.A.x
57
- ```
58
-
59
- ## Switching a sequence
60
- ```python
61
- hplc_controller.switch_sequence(sequence_name="hplc_testing")
62
- ```
63
- ## Editing a Sequence Row
64
- ```python
65
- from pychemstation.utils.sequence_types import *
66
- from pychemstation.utils.tray_types import *
67
-
68
- hplc_controller.edit_sequence_row(SequenceEntry(
69
- vial_location=FiftyFourVialPlate(plate=Plate.TWO, letter=Letter.A, num=Num.SEVEN).value(),
70
- method="General-Poroshell",
71
- num_inj=3,
72
- inj_vol=4,
73
- sample_name="Blank",
74
- sample_type=SampleType.BLANK,
75
- inj_source=InjectionSource.HIP_ALS
76
- ), 1)
77
- ```
78
-
79
- ## Editing entire Sequence Table
80
- ```python
81
- from pychemstation.utils.tray_types import *
82
- from pychemstation.utils.sequence_types import *
83
-
84
- seq_table = SequenceTable(
85
- name=DEFAULT_SEQUENCE,
86
- rows=[
87
- SequenceEntry(
88
- vial_location=FiftyFourVialPlate(plate=Plate.TWO, letter=Letter.A, num=Num.SEVEN).value(),
89
- method="General-Poroshell",
90
- num_inj=3,
91
- inj_vol=4,
92
- sample_name="Control",
93
- sample_type=SampleType.CONTROL,
94
- inj_source=InjectionSource.MANUAL
95
- ),
96
- SequenceEntry(
97
- vial_location=TenVialColumn.ONE.value,
98
- method="General-Poroshell",
99
- num_inj=1,
100
- inj_vol=1,
101
- sample_name="Sample",
102
- sample_type=SampleType.SAMPLE,
103
- inj_source=InjectionSource.AS_METHOD
104
- ),
105
- SequenceEntry(
106
- vial_location=10,
107
- method="General-Poroshell",
108
- num_inj=3,
109
- inj_vol=4,
110
- sample_name="Blank",
111
- sample_type=SampleType.BLANK,
112
- inj_source=InjectionSource.HIP_ALS
113
- ),
114
- ]
115
- )
116
- hplc_controller.edit_sequence(seq_table)
117
- ```
118
-
119
- ## Running a sequence and get data from last run sequence
120
- ```python
121
- hplc_controller.run_sequence(seq_table)
122
- chroms = hplc_controller.get_last_run_sequence_data()
123
- channel_A_time = chroms[0].A.x
124
- ```
@@ -1 +0,0 @@
1
- # Chemstation Devices and Tables
pychemstation/out.txt DELETED
@@ -1,145 +0,0 @@
1
- Local Rows
2
- Local Rows
3
- Local Rows
4
- LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
5
- response$ = _MethFile$
6
- Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
7
- response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
8
- Sleep 0.1
9
- Print Rows
10
- response$ = _MethFile$
11
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
12
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
13
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
14
- response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
15
- response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
16
- response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
17
- Local Rows
18
- Local Rows
19
- Local Rows
20
- LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
21
- response$ = _MethFile$
22
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-22-32-44"
23
- response$ = AcqStatus$
24
- response$ = AcqStatus$
25
- response$ = AcqStatus$
26
- response$ = AcqStatus$
27
- response$ = AcqStatus$
28
- response$ = AcqStatus$
29
- response$ = AcqStatus$
30
- response$ = AcqStatus$
31
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-22-36-41"
32
- response$ = AcqStatus$
33
- Local Rows
34
- Local Rows
35
- Local Rows
36
- LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
37
- response$ = _MethFile$
38
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-22-37-41"
39
- response$ = AcqStatus$
40
- response$ = AcqStatus$
41
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-46-39"
42
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-46-52"
43
- Local Rows
44
- Local Rows
45
- Local Rows
46
- LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
47
- response$ = _MethFile$
48
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-47-43"
49
- response$ = AcqStatus$
50
- response$ = AcqStatus$
51
- response$ = AcqStatus$
52
- Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
53
- response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
54
- Sleep 0.1
55
- Print Rows
56
- response$ = _MethFile$
57
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-48-45"
58
- response$ = AcqStatus$
59
- response$ = AcqStatus$
60
- response$ = AcqStatus$
61
- response$ = AcqStatus$
62
- Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
63
- response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
64
- Sleep 0.1
65
- Print Rows
66
- response$ = _MethFile$
67
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
68
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
69
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
70
- response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
71
- response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
72
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-50-02"
73
- response$ = AcqStatus$
74
- response$ = AcqStatus$
75
- response$ = AcqStatus$
76
- Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
77
- response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
78
- Sleep 0.1
79
- Print Rows
80
- response$ = _MethFile$
81
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
82
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
83
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
84
- response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
85
- response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
86
- response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
87
- response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
88
- response$ = AcqStatus$
89
- response$ = AcqStatus$
90
- response$ = AcqStatus$
91
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-27-23-59-41"
92
- response$ = AcqStatus$
93
- response$ = AcqStatus$
94
- response$ = AcqStatus$
95
- response$ = AcqStatus$
96
- response$ = AcqStatus$
97
- response$ = AcqStatus$
98
- response$ = AcqStatus$
99
- response$ = AcqStatus$
100
- response$ = AcqStatus$
101
- response$ = AcqStatus$
102
- response$ = AcqStatus$
103
- response$ = AcqStatus$
104
- response$ = AcqStatus$
105
- Local Rows
106
- Local Rows
107
- Local Rows
108
- Local Rows
109
- LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
110
- response$ = _MethFile$
111
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-01-48"
112
- Local Rows
113
- Local Rows
114
- Local Rows
115
- LoadMethod "C:\\Users\\Public\\Documents\\ChemStation\\1\\Methods\\", "testing.M"
116
- response$ = _MethFile$
117
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-02-04"
118
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-02-22"
119
- Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
120
- response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
121
- Local Rows
122
- Local Rows
123
- Local Rows
124
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-13-10"
125
- response$ = AcqStatus$
126
- response$ = AcqStatus$
127
- response$ = AcqStatus$
128
- Rows = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
129
- response_num = TabHdrVal(RCPMP1Method[1], "Timetable", "NumberOfRows")
130
- Sleep 0.1
131
- Print Rows
132
- response$ = _MethFile$
133
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "FlowFlow")
134
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "SolventCompositionPumpChannel2_Percentage")
135
- response_num = TabVal("RCPMP1Method[1]", "Timetable", 1, "Time")
136
- response_num = ObjHdrVal("RCPMP1Method[1]", "PumpChannel2_CompositionPercentage")
137
- response_num = ObjHdrVal("RCPMP1Method[1]", "Flow")
138
- response_num = ObjHdrVal("RCPMP1Method[1]", "StopTime_Time")
139
- response_num = ObjHdrVal("RCPMP1Method[1]", "PostTime_Time")
140
- response$ = AcqStatus$
141
- RunMethod "C:\Users\Public\Documents\ChemStation\1\data\",, "run_test_2025-03-28-00-14-53"
142
- response$ = AcqStatus$
143
- response$ = AcqStatus$
144
- response$ = AcqStatus$
145
- response$ = AcqStatus$