import pymedphys
from pymedphys.labs.managelogfiles import identify
mosaiq_string_time, _ = identify.date_convert('20/06/18 16:40:00 Z', 'UTC')
mosaiq_string_time
machine = '2619'
execute_string = """
SELECT
Ident.IDA,
TxField.FLD_ID,
Patient.Last_Name,
Patient.First_Name,
Tracktreatment.WasQAMode,
TxField.Type_Enum,
Tracktreatment.WasBeamComplete,
TrackTreatment.Create_DtTm,
TrackTreatment.Sent_DtTm,
TrackTreatment.Edit_DtTm,
TrackTreatment.Resolved_DtTm,
TrackTreatment.WasBeamOn,
TrackTreatment.WasCanceled,
TrackTreatment.WasRecorded,
TrackTreatment.Edit_ID,
TrackTreatment.Create_ID,
TrackTreatment.DHS_ID
FROM TrackTreatment, Ident, Patient, TxField, Staff
WHERE
TrackTreatment.Pat_ID1 = Ident.Pat_ID1 AND
Patient.Pat_ID1 = Ident.Pat_ID1 AND
TrackTreatment.FLD_ID = TxField.FLD_ID AND
Staff.Staff_ID = TrackTreatment.Machine_ID_Staff_ID AND
REPLACE(Staff.Last_Name, ' ', '') = %(machine)s AND
TrackTreatment.Create_DtTm <= DATEADD(second, %(buffer)d, %(delivery_time)s) AND
TrackTreatment.Edit_DtTm >= DATEADD(second, -%(buffer)d, %(delivery_time)s) AND
TxField.Field_Label = %(field_label)s AND
TxField.Field_Name = %(field_name)s
"""
parameters = {
"buffer": 12000,
"machine": machine,
"delivery_time": mosaiq_string_time,
"field_label": '1-3',
"field_name": '2 ARC VMAT #3-20',
}
with pymedphys.mosaiq.connect('msqsql') as cursor:
sql_result = pymedphys.mosaiq.execute(cursor, execute_string, parameters)
sql_result
execute_string = """
SELECT
Ident.IDA,
FLD_HST.FHS_ID,
FLD_HST.Create_DtTm,
FLD_HST.Edit_DtTm,
FLD_HST.Tx_DtTm,
FLD_HST.Control_Points,
FLD_HST.Meterset,
FLD_HST.Arc_Mu,
FLD_HST.SecondaryMeterset
FROM Ident, FLD_HST
WHERE
Ident.IDA = %(patient_id)s AND
FLD_HST.Pat_ID1 = Ident.Pat_ID1 AND
FLD_HST.Create_DtTm <= DATEADD(second, %(buffer)d, %(delivery_time)s) AND
FLD_HST.Edit_DtTm >= DATEADD(second, -%(buffer)d, %(delivery_time)s)
"""
parameters = {
"patient_id": '015075',
"buffer": 12000,
"machine": machine,
"delivery_time": mosaiq_string_time,
"field_label": '1-3',
"field_name": '2 ARC VMAT #3-20',
}
with pymedphys.mosaiq.connect('msqsql') as cursor:
sql_result = pymedphys.mosaiq.execute(cursor, execute_string, parameters)
sql_result
execute_string = """
SELECT
Ident.IDA,
FLD_HST.FHS_ID,
FLD_HST.Create_DtTm,
FLD_HST.Edit_DtTm,
FLD_HST.Tx_DtTm,
TxFieldPoint_Hst.Create_DtTm,
TxFieldPoint_Hst.Edit_DtTm,
TxFieldPoint_Hst.Tx_DtTm,
TxFieldPoint_Hst.Couch_Lat,
TxFieldPoint_Hst.Couch_Lng,
TxFieldPoint_Hst.Couch_Vrt
FROM Ident, FLD_HST, TxFieldPoint_Hst
WHERE
Ident.IDA = %(patient_id)s AND
FLD_HST.Pat_ID1 = Ident.Pat_ID1 AND
TxFieldPoint_Hst.FHS_ID = FLD_HST.FHS_ID AND
FLD_HST.Create_DtTm <= DATEADD(second, %(buffer)d, %(delivery_time)s) AND
FLD_HST.Edit_DtTm >= DATEADD(second, -%(buffer)d, %(delivery_time)s)
"""
parameters = {
"patient_id": '015075',
"buffer": 12000,
"machine": 'machine',
"delivery_time": mosaiq_string_time,
"field_label": '1-3',
"field_name": '2 ARC VMAT #3-20',
}
with pymedphys.mosaiq.connect('msqsql') as cursor:
sql_result = pymedphys.mosaiq.execute(cursor, execute_string, parameters)
sql_result