Ignore:
Timestamp:
May 29, 2011, 2:13:37 AM (13 years ago)
Author:
Sam Habiel
Message:

All changes to support BMX4. Now works with BMX 4.
AssemblyInfo: Bumped to 1.6 (will be 1.7 pending server changes).
Removed BMXNet23.dll and added BMXNET40.dll and BMXWIN40.dll.
Actual changes to support BMX 4 in the code:
All references to DocManager.ConnectInfo.bmxNetLib substituted with CGDocumentManager.Current.RemoteSession everywhere.
All Events use RemoteSession.EventServices APIs.
All references to DUZ use RemoteSession.User APIs.
All references to BMXNetLib.Piece changed to M.Piece.
Added RPC Logging Capability courtesy of BMX4.
Extensive changes in the Main[] class CGDocumentManager:

  • Added references to IndianHealthService.BMXNet.WinForm
  • Removed references to BMXNetLib and changed to RemoteSession
  • Singleton Instance constructor now private (overdue change).
  • Use new Event Framework part of Remote Session.
  • Login code totally rewritten to use BMXWIN40.dll.
  • RPMSDataTable references changed to TableFromCommand or TableFromSQL.

DAL:

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Scheduling/branches/BMX4Support/DAL.cs

    r1174 r1194  
    1616    public class DAL
    1717    {
    18         private BMXNetConnectInfo _thisConnection; // set in constructor
     18        private RemoteSession _thisConnection; // set in constructor
    1919       
    2020        delegate DataTable RPMSDataTableDelegate(string CommandString, string TableName); // for use in calling (Sync and Async)
     
    2525        /// </summary>
    2626        /// <param name="conn">The current connection to use</param>
    27         public DAL(BMXNetConnectInfo conn)
     27        public DAL(RemoteSession conn)
    2828        {
    2929            this._thisConnection = conn;
     
    3939        {
    4040            string cmd = String.Format("BMX VERSION INFO^{0}", nmsp);
    41             return RPMSDataTable(cmd, "");
     41            return _thisConnection.TableFromCommand(cmd);
    4242        }
    4343
     
    5050        {
    5151            string cmd = String.Format("BSDX SCHEDULING USER INFO^{0}", DUZ);
    52             return RPMSDataTable(cmd, "");
     52            return _thisConnection.TableFromCommand(cmd);
    5353        }
    5454
     
    6565        /// BLUE (NJ3,0), [0;7]
    6666        ///</returns>
    67         public DataTable GetAccessTypes()
     67        public DataTable GetAccessTypes(DataSet dataSetToTakeTable, string tablename)
    6868        {
    6969            string sCommandText = "SELECT * FROM BSDX_ACCESS_TYPE";
    70             DataTable table = RPMSDataTable(sCommandText, "");
     70            DataTable table = _thisConnection.TableFromSQL(sCommandText, dataSetToTakeTable, tablename);
    7171            DataColumn dcKey = table.Columns["BMXIEN"];
    7272            DataColumn[] dcKeys = new DataColumn[1];
     
    9393            string sEnd = FMDateTime.Create(EndDate).DateOnly.FMDateString;
    9494            string cmd = String.Format("BSDX CLINIC LETTERS^{0}^{1}^{2}", sClinicList, sBegin, sEnd);
    95             return RPMSDataTable(cmd, "");
     95            return _thisConnection.TableFromCommand(cmd);
    9696        }
    9797
     
    107107        {
    108108            string cmd = String.Format("BSDX RESOURCE LETTERS^{0}", sClinicList);
    109             return RPMSDataTable(cmd, "");
     109            return _thisConnection.TableFromCommand(cmd);
    110110        }
    111111
     
    126126            string sEnd = FMDateTime.Create(EndDate).DateOnly.FMDateString;
    127127            string cmd = String.Format("BSDX REBOOK CLINIC LIST^{0}^{1}^{2}", sClinicList, sBegin, sEnd);
    128             return RPMSDataTable(cmd, "");
     128            return _thisConnection.TableFromCommand(cmd);
    129129        }
    130130
     
    139139        {
    140140            string cmd = String.Format("BSDX REBOOK LIST^{0}", sApptList);
    141             return RPMSDataTable(cmd, "");
     141            return _thisConnection.TableFromCommand(cmd);
    142142        }
    143143
     
    157157            string sEnd = FMDateTime.Create(EndDate).DateOnly.FMDateString;
    158158            string cmd = String.Format("BSDX CANCEL CLINIC LIST^{0}^{1}^{2}", sClinicList, sBegin, sEnd);
    159             return RPMSDataTable(cmd, "");
     159            return _thisConnection.TableFromCommand(cmd);
    160160        }
    161161
     
    173173            string sEnd = FMDateTime.Create(EndDate).DateOnly.FMDateString;
    174174            string cmd = String.Format("BSDX CANCEL AV BY DATE^{0}^{1}^{2}", sResourceID, sBegin, sEnd);
    175             return RPMSDataTable(cmd, "Cancelled");
     175            return _thisConnection.TableFromCommand(cmd);
    176176        }
    177177
     
    185185        {
    186186            string cmd = string.Format("BSDX REMOVE CHECK-IN^{0}", ApptID);
    187             return RPMSDataTable(cmd, "");
     187            return _thisConnection.TableFromCommand(cmd);
    188188        }
    189189
     
    197197        {
    198198            string cmd = string.Format("BSDX GET RAD EXAM FOR PT^{0}^{1}", DFN, SCIEN);
    199             DataTable tbl = RPMSDataTable(cmd, "");
     199            DataTable tbl = _thisConnection.TableFromCommand(cmd);
    200200            return (from row in tbl.AsEnumerable()
    201201                    select new RadiologyExam
     
    218218        {
    219219            string fmStartDate = FMDateTime.Create(dStart).FMDateString;
    220             string result = _thisConnection.bmxNetLib.TransmitRPC("BSDX SCHEDULE RAD EXAM", string.Format("{0}^{1}^{2}", DFN, examIEN, fmStartDate));
     220            string result = _thisConnection.TransmitRPC("BSDX SCHEDULE RAD EXAM", string.Format("{0}^{1}^{2}", DFN, examIEN, fmStartDate));
    221221            return result == "1" ? true : false;
    222222        }
     
    230230        public bool CancelRadiologyExam(int DFN, int examIEN)
    231231        {
    232             string result = _thisConnection.bmxNetLib.TransmitRPC("BSDX HOLD RAD EXAM", string.Format("{0}^{1}", DFN, examIEN));
     232            string result = _thisConnection.TransmitRPC("BSDX HOLD RAD EXAM", string.Format("{0}^{1}", DFN, examIEN));
    233233            return result == "1" ? true : false;
    234234        }
     
    245245            get
    246246            {
    247                 string val = _thisConnection.bmxNetLib.TransmitRPC("BSDX GET PARAM", "BSDX AUTO PRINT RS");  //1 = true; 0 = false; "" = not set
     247                string val = _thisConnection.TransmitRPC("BSDX GET PARAM", "BSDX AUTO PRINT RS");  //1 = true; 0 = false; "" = not set
    248248                return val == "1" ? true : false;
    249249            }
    250250            set
    251251            {
    252                 TransmitRPCAsync _asyncTransmitter = new TransmitRPCAsync(_thisConnection.bmxNetLib.TransmitRPC);
     252                TransmitRPCAsync _asyncTransmitter = new TransmitRPCAsync(_thisConnection.TransmitRPC);
    253253                // 0 = success; anything else is wrong. Not being tested here as its success is not critical to application use.
    254254                _asyncTransmitter.BeginInvoke("BSDX SET PARAM", String.Format("{0}^{1}", "BSDX AUTO PRINT RS", value ? "1" : "0"), null, null);
     
    267267            get
    268268            {
    269                 string val = _thisConnection.bmxNetLib.TransmitRPC("BSDX GET PARAM", "BSDX AUTO PRINT AS");  //1 = true; 0 = false; "" = not set
     269                string val = _thisConnection.TransmitRPC("BSDX GET PARAM", "BSDX AUTO PRINT AS");  //1 = true; 0 = false; "" = not set
    270270                return val == "1" ? true : false;
    271271            }
    272272            set
    273273            {
    274                 TransmitRPCAsync _asyncTransmitter = new TransmitRPCAsync(_thisConnection.bmxNetLib.TransmitRPC);
     274                TransmitRPCAsync _asyncTransmitter = new TransmitRPCAsync(_thisConnection.TransmitRPC);
    275275                // 0 = success; anything else is wrong. Not being tested here as its success is not critical to application use.
    276276                _asyncTransmitter.BeginInvoke("BSDX SET PARAM", String.Format("{0}^{1}", "BSDX AUTO PRINT AS", value ? "1" : "0"), null, null);
     
    292292            DataTable dtOut;
    293293
    294 #if TRACE
    295             DateTime sendTime = DateTime.Now;
    296 #endif
    297294            try
    298295            {
    299                 RPMSDataTableDelegate rdtd = new RPMSDataTableDelegate(_thisConnection.RPMSDataTable);
     296                RPMSDataTableDelegate rdtd = new RPMSDataTableDelegate(_thisConnection.TableFromSQL);
    300297                dtOut = (DataTable)rdtd.Invoke(sSQL, sTableName);
    301298            }
     
    306303                throw ex;
    307304            }
    308 
    309 #if TRACE
    310             DateTime receiveTime = DateTime.Now;
    311             TimeSpan executionTime = receiveTime - sendTime;
    312             Debug.Write("RPMSDataTable Execution Time: " + executionTime.Milliseconds + " ms.\n");
    313 #endif
    314305
    315306            return dtOut;
Note: See TracChangeset for help on using the changeset viewer.