Changeset 1474
- Timestamp:
- Jul 6, 2012, 3:37:41 PM (12 years ago)
- Location:
- Scheduling/trunk/cs/bsdx0200GUISourceCode
- Files:
-
- 1 deleted
- 14 edited
- 6 copied
Legend:
- Unmodified
- Added
- Removed
-
Scheduling/trunk/cs/bsdx0200GUISourceCode
- Property svn:mergeinfo changed
/Scheduling/branches/BMX4Support (added) merged: 1175,1194-1195,1197,1453,1471
- Property svn:mergeinfo changed
-
Scheduling/trunk/cs/bsdx0200GUISourceCode/AssemblyInfo.cs
r1248 r1474 28 28 // by using the '*' as shown below: 29 29 30 [assembly: AssemblyVersion("1. 6.1.*")]30 [assembly: AssemblyVersion("1.7.0.*")] 31 31 32 32 // … … 58 58 [assembly: AssemblyKeyFile("")] 59 59 [assembly: AssemblyKeyName("")] 60 [assembly: AssemblyFileVersionAttribute("1. 6.1.0")]60 [assembly: AssemblyFileVersionAttribute("1.7.0.0")] 61 61 [assembly: ComVisibleAttribute(false)] -
Scheduling/trunk/cs/bsdx0200GUISourceCode/CGAVView.cs
r1117 r1474 654 654 // sSql = "BSDX RAISE EVENT^" + sEvent + "^" + sParams + "^^"; 655 655 // DataTable dtAppt =m_DocManager.RPMSDataTable(sSql, "RaiseEvent"); 656 this.m_DocManager.ConnectInfo.RaiseEvent(sEvent, sParams, true);656 CGDocumentManager.Current.RemoteSession.EventServices.TriggerEvent(sEvent, sParams, true); 657 657 } 658 658 catch (Exception ex) … … 809 809 { 810 810 calendarGrid1.CGToolTip.Active = false; 811 string sMsg = " this access block?";811 string sMsg; 812 812 if (calendarGrid1.SelectedAppointments.AppointmentTable.Count > 1) 813 813 sMsg = " these access blocks?"; … … 859 859 try 860 860 { 861 bool bLock = DocManager.ConnectInfo.bmxNetLib.Lock("^BSDXMGR", "+");861 bool bLock = CGDocumentManager.Current.RemoteSession.Lock("^BSDXMGR", "+"); 862 862 if (bLock == false) 863 863 { … … 872 872 return; 873 873 } 874 bLock = DocManager.ConnectInfo.bmxNetLib.Lock("^BSDXMGR", "-");874 bLock = CGDocumentManager.Current.RemoteSession.Lock("^BSDXMGR", "-"); 875 875 } 876 876 catch (Exception ex) … … 947 947 { 948 948 this.calendarGrid1.CloseGrid(); 949 DocManager.ConnectInfo.bmxNetLib.Lock("^BSDXRES(" + Document.ResourceID.ToString() + ")", "-");949 CGDocumentManager.Current.RemoteSession.Lock("^BSDXRES(" + Document.ResourceID.ToString() + ")", "-"); 950 950 } 951 951 -
Scheduling/trunk/cs/bsdx0200GUISourceCode/CGDocumentManager.cs
r1143 r1474 1 /* Main Class...: 2 * Original Author: Horace Whitt 3 * Current Author and Maintainer: Sam Habiel 4 * License: LGPL. http://www.gnu.org/licenses/lgpl-2.1.html 5 */ 6 1 7 using System; 2 8 using System.Windows.Forms; … … 6 12 using System.Threading; 7 13 using IndianHealthService.BMXNet; 14 using IndianHealthService.BMXNet.WinForm; 15 using IndianHealthService.BMXNet.WinForm.Configuration; //grrrr... too many namespaces here... 8 16 using Mono.Options; 9 17 using System.Runtime.InteropServices; … … 42 50 //M Connection member variables 43 51 private DataSet m_dsGlobal = null; // Holds all user data 44 private BMXNetConnectInfo m_ConnectInfo = null; // Connection to VISTA object45 private BMXNetConnectInfo.BMXNetEventDelegate CDocMgrEventDelegate; // Delegate to respond to messages from VISTA. Responds to event: BMXNetConnectInfo.BMXNetEvent46 52 47 53 //Custom Printing … … 51 57 #region Properties 52 58 53 /// <summary> 54 /// Returns the document manager's BMXNetConnectInfo member 55 /// </summary> 56 public BMXNetConnectInfo ConnectInfo 57 { 58 get 59 { 60 return m_ConnectInfo; 61 } 62 } 59 public WinFramework WinFramework { get; private set; } // Login Manager 60 public RemoteSession RemoteSession { get; private set; } // Data Sesssion against the RPMS/VISTA server 61 public RPCLogger RPCLogger { get; private set; } // Logger for RPCs 63 62 64 63 /// <summary> … … 153 152 154 153 /// <summary> 155 /// Constructor. Does absolutely nothing at this point.154 /// Private constructor for singleton instance. 156 155 /// </summary> 157 p ublicCGDocumentManager()156 private CGDocumentManager() 158 157 { 159 158 } … … 218 217 opset.Parse(args); 219 218 220 //Init app 221 bool isEverythingOkay = _current.InitializeApp(); 222 223 //if an error occurred, break out. 219 //Init app. Catch Login Exceptions if they happen. 220 bool isEverythingOkay = false; 221 try 222 { 223 isEverythingOkay = _current.InitializeApp(); 224 } 225 catch (Exception ex) 226 { 227 228 MessageBox.Show("Booboo: An Error Happened: " + ex.Message); 229 return; // exit application 230 } 231 232 233 //if something yucky happened, break out. 224 234 if (!isEverythingOkay) return; 225 235 … … 235 245 view.InitializeDocView(doc, _current, doc.StartDate, _current.WindowText); 236 246 237 //Handle BMX Event247 //Handle Message Queue 238 248 Application.DoEvents(); 239 249 … … 295 305 296 306 #region BMXNet Event Handler 297 private void CDocMgrEventHandler(Object obj, BMXNet.BMXNetEventArgs e)298 { 299 if (e. BMXEvent== "BSDX CALL WORKSTATIONS")307 private void CDocMgrEventHandler(Object obj, RemoteEventArgs e) 308 { 309 if (e.EventType == "BSDX CALL WORKSTATIONS") 300 310 { 301 311 string sParam = ""; 302 312 string sDelim="~"; 303 sParam += this. m_ConnectInfo.UserName + sDelim;313 sParam += this.RemoteSession.User.Name + sDelim; 304 314 sParam += this.m_sHandle + sDelim; 305 315 sParam += Application.ProductVersion + sDelim; 306 316 sParam += this._views.Count.ToString(); 307 _current. m_ConnectInfo.RaiseEvent("BSDX WORKSTATION REPORT", sParam, true);308 } 309 if (e. BMXEvent== "BSDX ADMIN MESSAGE")310 { 311 string sMsg = e. BMXParam;317 _current.RemoteSession.EventServices.TriggerEvent("BSDX WORKSTATION REPORT", sParam, true); 318 } 319 if (e.EventType == "BSDX ADMIN MESSAGE") 320 { 321 string sMsg = e.EventType; 312 322 ShowAdminMsgDelegate samd = new ShowAdminMsgDelegate(ShowAdminMsg); 313 //this.Invoke(samd, new object [] {sMsg});314 323 samd.Invoke(sMsg); 315 324 } 316 if (e. BMXEvent== "BSDX ADMIN SHUTDOWN")317 { 318 string sMsg = e. BMXParam;325 if (e.EventType == "BSDX ADMIN SHUTDOWN") 326 { 327 string sMsg = e.Details; 319 328 CloseAllDelegate cad = new CloseAllDelegate(CloseAll); 320 //this.Invoke(cad, new object [] {sMsg});321 329 cad.Invoke(sMsg); 322 330 } … … 353 361 private bool InitializeApp(bool bReLogin) 354 362 { 355 //Set M connection info 356 m_ConnectInfo = new BMXNetConnectInfo(m_Encoding); // Encoding is "" unless passed in command line 357 _dal = new DAL(m_ConnectInfo); // Data access layer 358 //m_ConnectInfo.bmxNetLib.StartLog(); //This line turns on logging of messages 363 //Note: There are 2 splashes -- one for being the parent of the log in forms 364 // the next is invoked async and updated async while the GUI is loading 365 // The reason is b/c an async form cannot be the parent of another that lies on the main thread 366 367 RPCLogger = new RPCLogger(); 368 369 DSplash firstSplash = new DSplash(); 370 371 firstSplash.Show(); 359 372 360 //Create a delegate to process events raised by BMX. 361 CDocMgrEventDelegate = new BMXNetConnectInfo.BMXNetEventDelegate(CDocMgrEventHandler); 373 /* IMPORTANT NOTE 374 * LOGIN CODE IS COPIED ALMOST VERBATIM FROM THE SCHEMABUILDER APPLICAITON; 375 * THE ONLY ONE I CAN FIND WHICH RELIES ON BMX 4 NEW WAYS WHICH I CAN'T FIGURE OUT 376 */ 377 LoginProcess login; 378 this.WinFramework = WinFramework.CreateWithNetworkBroker(true, RPCLogger); 379 380 if (bReLogin) // if logging in again... 381 { 382 this.WinFramework.LoadConnectionSpecs(LocalPersistentStore.CreateDefaultStorage(true), "BSDX"); 383 login = this.WinFramework.CreateLoginProcess(); 384 login.AttemptUserInputLogin("Clincal Scheduling Log-in", 3, true, firstSplash); 385 goto DoneTrying; 386 } 387 388 // If server,port,ac,vc are supplied on command line, then try to connect... 389 else if (!String.IsNullOrEmpty(m_Server) && m_Port != 0 && !String.IsNullOrEmpty(m_AccessCode) && !String.IsNullOrEmpty(m_VerifyCode)) 390 { 391 RpmsConnectionSpec spec = new RpmsConnectionSpec(); 392 spec.IsDefault = true; 393 spec.Name = "Command Line Server"; 394 spec.Port = m_Port; 395 spec.Server = m_Server; 396 spec.UseWindowsAuthentication = false; //for now 397 spec.UseDefaultNamespace = true; //for now 398 login = this.WinFramework.CreateLoginProcess(); 399 login.AutoSetDivisionToLastLookup = false; 400 login.AttemptAccessVerifyLogin(spec, m_AccessCode, m_VerifyCode); 401 goto DoneTrying; 402 } 403 404 // if only server, port is supplied, then use these instead 405 else if (!String.IsNullOrEmpty(m_Server) && m_Port != 0) 406 { 407 RpmsConnectionSpec spec = new RpmsConnectionSpec(); 408 spec.IsDefault = true; 409 spec.Name = "Command Line Server"; 410 spec.Port = m_Port; 411 spec.Server = m_Server; 412 spec.UseWindowsAuthentication = false; //for now 413 spec.UseDefaultNamespace = true; //for now 414 415 RpmsConnectionSettings cxnSettings = new RpmsConnectionSettings 416 { 417 CommandLineConnectionSpec = spec 418 }; 419 420 this.WinFramework.ConnectionSettings = cxnSettings; 421 422 login = this.WinFramework.CreateLoginProcess(); 423 login.AutoSetDivisionToLastLookup = false; 424 //test 425 //spec.UseWindowsAuthentication = true; 426 login.AttemptUserInputLogin("Clinical Scheduling Log-in", 3, false, firstSplash); 427 //login.AttemptWindowsAuthLogin(); 428 //test 429 goto DoneTrying; 430 } 431 432 // if nothing is supplied, fall back on the original dialog 433 else 434 { 435 this.WinFramework.LoadConnectionSpecs(LocalPersistentStore.CreateDefaultStorage(true), "BSDX"); 436 login = this.WinFramework.CreateLoginProcess(); 437 login.AutoSetDivisionToLastLookup = false; 438 login.AttemptUserInputLogin("Clincal Scheduling Log-in", 3, true, firstSplash); 439 440 goto DoneTrying; 441 } 442 443 DoneTrying: 444 if (!login.WasSuccessful) 445 { 446 return false; 447 } 448 449 LocalSession local = this.WinFramework.LocalSession; 450 451 if ((this.WinFramework.Context.User.Division == null) && !this.WinFramework.AttemptUserInputSetDivision("Set Initial Division", firstSplash)) 452 { 453 return false; 454 } 455 456 457 458 this.RemoteSession = this.WinFramework.PrimaryRemoteSession; 459 362 460 //Tie delegate to Events generated by BMX. 363 m_ConnectInfo.BMXNetEvent += CDocMgrEventDelegate; 364 //Disable polling (But does this really work???? I don't see how it gets disabled) 365 m_ConnectInfo.EventPollingEnabled = false; 366 461 this.RemoteSession.EventServices.RpmsEvent += this.CDocMgrEventHandler; 462 //Disable polling 463 this.RemoteSession.EventServices.IsEventPollingEnabled = false; 464 465 //Second splash screens 367 466 //Show a splash screen while initializing; define delegates to remote thread 368 DSplash m_ds= new DSplash();369 DSplash.dSetStatus setStatusDelegate = new DSplash.dSetStatus( m_ds.SetStatus);370 DSplash.dAny closeSplashDelegate = new DSplash.dAny( m_ds.RemoteClose);371 DSplash.dProgressBarSet setMaxProgressDelegate = new DSplash.dProgressBarSet( m_ds.RemoteProgressBarMaxSet);372 DSplash.dProgressBarSet setProgressDelegate = new DSplash.dProgressBarSet( m_ds.RemoteProgressBarValueSet);467 DSplash secondSplash = new DSplash(); 468 DSplash.dSetStatus setStatusDelegate = new DSplash.dSetStatus(secondSplash.SetStatus); 469 DSplash.dAny closeSplashDelegate = new DSplash.dAny(secondSplash.RemoteClose); 470 DSplash.dProgressBarSet setMaxProgressDelegate = new DSplash.dProgressBarSet(secondSplash.RemoteProgressBarMaxSet); 471 DSplash.dProgressBarSet setProgressDelegate = new DSplash.dProgressBarSet(secondSplash.RemoteProgressBarValueSet); 373 472 374 473 //Start new thread for the Splash screen. … … 376 475 threadSplash.IsBackground = true; //expendable thread -- exit even if still running. 377 476 threadSplash.Name = "Splash Thread"; 378 threadSplash.Start(m_ds); // pass form as parameter. 477 threadSplash.Start(secondSplash); 478 479 firstSplash.Close(); // close temporary splash now that the new one is up and running 379 480 380 481 //There are 21 steps to load the application. That's max for the progress bar. 381 482 setMaxProgressDelegate(21); 483 484 // smh--not used: System.Configuration.ConfigurationManager.GetSection("appSettings"); 485 setStatusDelegate("Connecting to VISTA"); 486 382 487 383 // smh--not used: System.Configuration.ConfigurationManager.GetSection("appSettings"); 384 385 setStatusDelegate("Connecting to VISTA"); 386 488 /* 387 489 //Try to connect using supplied values for Server and Port 388 490 //Why am I doing this? The library BMX net uses prompts for access and verify code … … 462 564 } 463 565 }while (bRetry == true); 464 465 //Printing 466 566 */ 567 568 //Printing Custom DLL. Perfect place for code injection!!! 569 //************************************************* 467 570 string DllLocation = string.Empty; 468 571 System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(Application.StartupPath + @"\Printing\"); … … 495 598 this.m_PrintingObject = Creator.PrintFactory(); 496 599 } 497 600 //************************************************ 498 601 499 602 //User Interface Culture (m_CultureName is set from the command line flag /culture) … … 512 615 } 513 616 617 _dal = new DAL(RemoteSession); // Data access layer 618 514 619 //Create global dataset 515 620 _current.m_dsGlobal = new DataSet("GlobalDataSet"); … … 553 658 setProgressDelegate(2); 554 659 setStatusDelegate("Setting encoding..."); 555 660 //PORT TODO: Set encoding 556 661 if (m_Encoding == String.Empty) 557 662 { 558 string utf8_server_support = m_ConnectInfo.bmxNetLib.TransmitRPC("BMX UTF-8", ""); 663 string utf8_server_support = RemoteSession.TransmitRPC("BMX UTF-8", ""); 664 559 665 if (utf8_server_support == "1") 560 m_ConnectInfo.bmxNetLib.Encoder = System.Text.UTF8Encoding.UTF8; 666 RemoteSession.ConnectionEncoding = System.Text.UTF8Encoding.UTF8; 667 561 668 } 562 669 … … 565 672 setProgressDelegate(3); 566 673 setStatusDelegate("Setting Application Context to BSDXRPC..."); 567 m_ConnectInfo.AppContext = "BSDXRPC";674 RemoteSession.AppContext = "BSDXRPC"; 568 675 569 676 //User Preferences Object … … 571 678 setStatusDelegate("Getting User Preferences from the Server..."); 572 679 573 _current.UserPreferences = new UserPreferences(); // Does the calling to do that...680 _current.UserPreferences = new UserPreferences(); // Constructor Does the calling to do that... 574 681 575 682 //Load global recordsets … … 583 690 setProgressDelegate(6); 584 691 setStatusDelegate(statusConst + " Schedule User"); 585 DataTable dtUser = _dal.GetUserInfo( m_ConnectInfo.DUZ);692 DataTable dtUser = _dal.GetUserInfo(RemoteSession.User.Duz); 586 693 dtUser.TableName = "SchedulingUser"; 587 694 m_dsGlobal.Tables.Add(dtUser); … … 598 705 setProgressDelegate(7); 599 706 setStatusDelegate(statusConst + " Access Types"); 600 DataTable dtAccessTypes = _dal.GetAccessTypes(); 601 dtAccessTypes.TableName = "AccessTypes"; 602 m_dsGlobal.Tables.Add(dtAccessTypes); 707 DataTable dtAccessTypes = _dal.GetAccessTypes(m_dsGlobal, "AccessTypes"); 603 708 604 709 //Get Access Groups … … 680 785 //cmd.CommandText = "SELECT BMXIEN 'HOSPITAL_LOCATION_ID', NAME 'HOSPITAL_LOCATION', DEFAULT_PROVIDER, STOP_CODE_NUMBER, INACTIVATE_DATE, REACTIVATE_DATE FROM HOSPITAL_LOCATION"; 681 786 sCommandText = "BSDX HOSPITAL LOCATION"; 682 ConnectInfo.RPMSDataTable(sCommandText, "HospitalLocation", m_dsGlobal);787 RemoteSession.TableFromCommand(sCommandText, m_dsGlobal, "HospitalLocation"); 683 788 Debug.Write("LoadGlobalRecordsets -- HospitalLocation loaded\n"); 684 789 … … 732 837 setStatusDelegate(statusConst + " Providers"); 733 838 sCommandText = "SELECT BMXIEN, NAME FROM NEW_PERSON WHERE INACTIVE_DATE = '' AND BMXIEN > 1"; 734 ConnectInfo.RPMSDataTable(sCommandText, "Provider", m_dsGlobal);839 RemoteSession.TableFromSQL(sCommandText, m_dsGlobal, "Provider"); 735 840 Debug.Write("LoadGlobalRecordsets -- Provider loaded\n"); 736 841 … … 740 845 setStatusDelegate(statusConst + " Holiday"); 741 846 sCommandText = "SELECT NAME, DATE FROM HOLIDAY WHERE INTERNAL[DATE] > '" + FMDateTime.Create(DateTime.Today).DateOnly.FMDateString + "'"; 742 ConnectInfo.RPMSDataTable(sCommandText, "HOLIDAY", m_dsGlobal);847 RemoteSession.TableFromSQL(sCommandText, m_dsGlobal, "HOLIDAY"); 743 848 Debug.Write("LoadingGlobalRecordsets -- Holidays loaded\n"); 744 849 … … 749 854 750 855 setStatusDelegate("Setting Receive Timeout"); 751 _current. m_ConnectInfo.ReceiveTimeout = 30000; //30-second timeout856 _current.RemoteSession.ReceiveTimeout = 30000; //30-second timeout 752 857 753 858 #if DEBUG 754 _current. m_ConnectInfo.ReceiveTimeout = 600000; //longer timeout for debugging859 _current.RemoteSession.ReceiveTimeout = 600000; //longer timeout for debugging 755 860 #endif 756 861 // Event Subsriptions … … 758 863 //Table #16 759 864 setProgressDelegate(18); 760 _current. m_ConnectInfo.SubscribeEvent("BSDX SCHEDULE");865 _current.RemoteSession.EventServices.Subscribe("BSDX SCHEDULE"); 761 866 //Table #17 762 867 setProgressDelegate(19); 763 _current. m_ConnectInfo.SubscribeEvent("BSDX CALL WORKSTATIONS");868 _current.RemoteSession.EventServices.Subscribe("BSDX CALL WORKSTATIONS"); 764 869 //Table #18 765 870 setProgressDelegate(20); 766 _current. m_ConnectInfo.SubscribeEvent("BSDX ADMIN MESSAGE");871 _current.RemoteSession.EventServices.Subscribe("BSDX ADMIN MESSAGE"); 767 872 //Table #19 768 873 setProgressDelegate(21); 769 _current.m_ConnectInfo.SubscribeEvent("BSDX ADMIN SHUTDOWN"); 770 771 _current.m_ConnectInfo.EventPollingInterval = 5000; //in milliseconds 772 _current.m_ConnectInfo.EventPollingEnabled = true; 773 _current.m_ConnectInfo.AutoFire = 12; //AutoFire every 12*5 seconds 874 _current.RemoteSession.EventServices.Subscribe("BSDX ADMIN SHUTDOWN"); 875 876 _current.RemoteSession.EventServices.EventPollingInterval = 5000; //in milliseconds 877 _current.RemoteSession.EventServices.IsEventPollingEnabled = true; 878 879 //PORT TODO: No Autofire in BMX 4.0 880 //_current.RemoteSession.EventServices. = 12; //AutoFire every 12*5 seconds 774 881 775 882 //Close Splash Screen … … 785 892 { 786 893 string sCommandText = "SELECT * FROM BSDX_ACCESS_GROUP"; 787 ConnectInfo.RPMSDataTable(sCommandText, "AccessGroup", m_dsGlobal);894 RemoteSession.TableFromSQL(sCommandText, m_dsGlobal, "AccessGroup"); 788 895 Debug.Write("LoadGlobalRecordsets -- AccessGroups loaded\n"); 789 896 } … … 792 899 { 793 900 string sCommandText = "BSDX GET ACCESS GROUP TYPES"; 794 ConnectInfo.RPMSDataTable(sCommandText, "AccessGroupType", m_dsGlobal);901 RemoteSession.TableFromCommand(sCommandText, m_dsGlobal, "AccessGroupType"); 795 902 Debug.Write("LoadGlobalRecordsets -- AccessGroupTypes loaded\n"); 796 903 } … … 798 905 public void LoadBSDXResourcesTable() 799 906 { 800 string sCommandText = "BSDX RESOURCES^" + m_ConnectInfo.DUZ;801 ConnectInfo.RPMSDataTable(sCommandText, "Resources", m_dsGlobal);907 string sCommandText = "BSDX RESOURCES^" + RemoteSession.User.Duz; 908 RemoteSession.TableFromCommand(sCommandText, m_dsGlobal, "Resources"); 802 909 Debug.Write("LoadGlobalRecordsets -- Resources loaded\n"); 803 910 } … … 809 916 //to which user has access 810 917 //Fields are: RESOURCE_GROUPID, RESOURCE_GROUP 811 string sCommandText = "BSDX RESOURCE GROUPS BY USER^" + m_ConnectInfo.DUZ;812 ConnectInfo.RPMSDataTable(sCommandText, "ResourceGroup", m_dsGlobal);918 string sCommandText = "BSDX RESOURCE GROUPS BY USER^" + RemoteSession.User.Duz; 919 RemoteSession.TableFromCommand(sCommandText, m_dsGlobal, "ResourceGroup"); 813 920 Debug.Write("LoadGlobalRecordsets -- ResourceGroup loaded\n"); 814 921 } … … 821 928 //are returned. 822 929 //Fields are: RESOURCE_GROUPID, RESOURCE_GROUP, RESOURCE_GROUP_ITEMID, RESOURCE_NAME, RESOURCE_ID 823 string sCommandText = "BSDX GROUP RESOURCE^" + m_ConnectInfo.DUZ;824 ConnectInfo.RPMSDataTable(sCommandText, "GroupResources", m_dsGlobal);930 string sCommandText = "BSDX GROUP RESOURCE^" + RemoteSession.User.Duz; 931 RemoteSession.TableFromCommand(sCommandText, m_dsGlobal, "GroupResources"); 825 932 Debug.Write("LoadGlobalRecordsets -- GroupResources loaded\n"); 826 933 } … … 831 938 //who possesses the BSDXZMENU security key. 832 939 string sCommandText = "BSDX SCHEDULE USER"; 833 ConnectInfo.RPMSDataTable(sCommandText, "ScheduleUser", m_dsGlobal);940 RemoteSession.TableFromCommand(sCommandText, m_dsGlobal, "ScheduleUser"); 834 941 Debug.Write("LoadGlobalRecordsets -- ScheduleUser loaded\n"); 835 942 } … … 850 957 if (!bAllUsers) 851 958 { 852 sCommandText += String.Format(" WHERE INTERNAL[USERNAME] = {0}", m_ConnectInfo.DUZ);853 } 854 855 ConnectInfo.RPMSDataTable(sCommandText, "ResourceUser", m_dsGlobal);959 sCommandText += String.Format(" WHERE INTERNAL[USERNAME] = {0}", RemoteSession.User.Duz); 960 } 961 962 RemoteSession.TableFromSQL(sCommandText, m_dsGlobal, "ResourceUser"); 856 963 Debug.Write("LoadGlobalRecordsets -- ResourceUser loaded\n"); 857 964 } … … 968 1075 if ((Views.Count == 0)&&(this.AvailabilityViews.Count == 0)&&(m_bExitOK == true)) 969 1076 { 970 m_ConnectInfo.EventPollingEnabled = false;971 m_ConnectInfo.UnSubscribeEvent("BSDX SCHEDULE");972 m_ConnectInfo.CloseConnection();1077 RemoteSession.EventServices.IsEventPollingEnabled = false; 1078 RemoteSession.EventServices.Unsubscribe("BSDX SCHEDULE"); 1079 RemoteSession.Close(); 973 1080 Application.Exit(); 974 1081 } … … 983 1090 if ((Views.Count == 0)&&(this.AvailabilityViews.Count == 0)&&(m_bExitOK == true)) 984 1091 { 985 m_ConnectInfo.bmxNetLib.CloseConnection();1092 RemoteSession.Close(); 986 1093 Application.Exit(); 987 1094 } … … 1123 1230 1124 1231 //Used in Do loop 1125 bool bRetry = true;1232 //bool bRetry = true; 1126 1233 1127 / / Do Loop to deal with changing the server and the vagaries of user choices.1234 /*// Do Loop to deal with changing the server and the vagaries of user choices. 1128 1235 do 1129 1236 { … … 1134 1241 //so it can be re-used when BMX tries to log in again. 1135 1242 //Access and Verify code are prompted for in InitializeApp 1136 m_ConnectInfo.ChangeServerInfo(); 1243 LoginProcess login = this.WinFramework.CreateLoginProcess(); 1244 login.AttemptUserInputLogin("ReLog-in", 3, true, null); 1137 1245 bRetry = false; 1138 1246 } … … 1157 1265 } 1158 1266 } while (bRetry == true); 1159 1267 */ 1268 1160 1269 //Parameter for initialize app tells it that this is a re-login and forces a new access and verify code. 1161 1270 bool isEverythingOkay = this.InitializeApp(true); … … 1194 1303 private void mnuRPMSLogin_Click(object sender, EventArgs e) 1195 1304 { 1196 //Warn that changing login will close all schedules 1305 mnuRPMSServer_Click(sender, e); 1306 1307 /* v 1.7 to support BMX 4 -- commented out -- smh 1308 //Warn that changing login will close all schedules 1197 1309 if (MessageBox.Show("Are you sure you want to close all schedules and login to VistA?", "Clinical Scheduling", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK) 1198 1310 return; … … 1206 1318 CloseAll(); 1207 1319 m_bExitOK = true; 1320 1321 LoginProcess login = this.WinFramework.CreateLoginProcess(); 1322 login.AttemptUserInputLogin("Clincal Scheduling", 3, true, null); 1323 //m_ConnectInfo.bmxNetLib.StartLog(); //This line turns on logging of messages 1324 1325 if (!login.WasSuccessful) 1326 { 1327 return; 1328 } 1329 1330 LocalSession local = this.WinFramework.LocalSession; 1331 1332 if ((this.WinFramework.Context.User.Division == null) && !this.WinFramework.AttemptUserInputSetDivision("Set Initial Division", null)) 1333 { 1334 return; 1335 } 1336 1337 this.RemoteSession = this.WinFramework.PrimaryRemoteSession; 1208 1338 1209 1339 //Parameter for initialize app tells it that this is a re-login and forces a new access and verify code. … … 1233 1363 throw ex; 1234 1364 } 1235 1365 */ 1236 1366 } 1237 1367 … … 1290 1420 { 1291 1421 //System.IntPtr pHandle = this.Handle; 1292 RPMSDataTableDelegate rdtd = new RPMSDataTableDelegate( ConnectInfo.RPMSDataTable);1422 RPMSDataTableDelegate rdtd = new RPMSDataTableDelegate(RemoteSession.TableFromCommand); 1293 1423 //dtOut = (DataTable) this.Invoke(rdtd, new object[] {sSQL, sTableName}); 1294 dtOut = rdtd.Invoke(sSQL, sTableName); 1424 dtOut = RemoteSession.TableFromCommand(sSQL); 1425 dtOut.TableName = sTableName; 1426 1295 1427 } 1296 1428 … … 1307 1439 public void ChangeDivision(System.Windows.Forms.Form frmCaller) 1308 1440 { 1309 this.ConnectInfo.ChangeDivision(frmCaller); 1441 WinFramework.AttemptUserInputSetDivision("Change Division", frmCaller); 1442 1443 RemoteSession = WinFramework.PrimaryRemoteSession; 1444 1310 1445 foreach (CGView v in _views.Keys) 1311 1446 { -
Scheduling/trunk/cs/bsdx0200GUISourceCode/CGView.cs
r1233 r1474 114 114 private MenuItem sepApptMenu3; 115 115 private MenuItem mnuReprintApptSlip; 116 private MenuItem mnuViewBrokerLog; 116 117 private IContainer components; 117 118 … … 132 133 public void InitializeDocView(string sText) 133 134 { 134 this.Text = this.DocManager.ConnectInfo.UserName;135 this.Text = CGDocumentManager.Current.RemoteSession.User.Name; 135 136 if (sText != null) 136 137 this.Text += " - " + sText; 137 if (DocManager.ConnectInfo.DivisionName != null)138 this.Text += " - " + DocManager.ConnectInfo.DivisionName;138 if (CGDocumentManager.Current.RemoteSession.User.Division.Name != null) 139 this.Text += " - " + CGDocumentManager.Current.RemoteSession.User.Division.Name; 139 140 } 140 141 … … 157 158 158 159 // Set username and division up top 159 this.Text = this.DocManager.ConnectInfo.UserName;160 this.Text = CGDocumentManager.Current.RemoteSession.User.Name; 160 161 if (sText != null) 161 162 this.Text += " - " + sText; 162 if (DocManager.ConnectInfo.DivisionName != null) 163 this.Text += " - " + DocManager.ConnectInfo.DivisionName; 164 165 this.m_ConnectInfo = m_DocManager.ConnectInfo; 166 m_bmxDelegate = new BMXNetConnectInfo.BMXNetEventDelegate(BMXNetEventHandler); 167 m_ConnectInfo.BMXNetEvent += m_bmxDelegate; 168 } 169 170 private BMXNetConnectInfo.BMXNetEventDelegate m_bmxDelegate; 163 if (CGDocumentManager.Current.RemoteSession.User.Division.Name != null) 164 this.Text += " - " + CGDocumentManager.Current.RemoteSession.User.Division.Name; 165 166 CGDocumentManager.Current.RemoteSession.EventServices.RpmsEvent += BMXNetEventHandler; 167 } 171 168 172 169 … … 235 232 this.mnuHelp = new System.Windows.Forms.MenuItem(); 236 233 this.mnuHelpAbout = new System.Windows.Forms.MenuItem(); 234 this.mnuViewBrokerLog = new System.Windows.Forms.MenuItem(); 237 235 this.mnuTest = new System.Windows.Forms.MenuItem(); 238 236 this.mnuTest1 = new System.Windows.Forms.MenuItem(); … … 680 678 this.mnuHelp.Index = 3; 681 679 this.mnuHelp.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { 682 this.mnuHelpAbout}); 680 this.mnuHelpAbout, 681 this.mnuViewBrokerLog}); 683 682 this.mnuHelp.Text = "&Help"; 684 683 // … … 688 687 this.mnuHelpAbout.Text = "&About"; 689 688 this.mnuHelpAbout.Click += new System.EventHandler(this.mnuHelpAbout_Click); 689 // 690 // mnuViewBrokerLog 691 // 692 this.mnuViewBrokerLog.Index = 1; 693 this.mnuViewBrokerLog.Text = "&View Broker Log"; 694 this.mnuViewBrokerLog.Click += new System.EventHandler(this.mnuViewBrokerLog_Click); 690 695 // 691 696 // mnuTest … … 702 707 this.mnuTest1.Index = 0; 703 708 this.mnuTest1.Text = "Test1"; 704 this.mnuTest1.Click += new System.EventHandler(this.mnuTest1_Click);705 709 // 706 710 // tvSchedules … … 712 716 this.tvSchedules.Location = new System.Drawing.Point(0, 0); 713 717 this.tvSchedules.Name = "tvSchedules"; 714 this.tvSchedules.Size = new System.Drawing.Size(128, 3 92);718 this.tvSchedules.Size = new System.Drawing.Size(128, 389); 715 719 this.tvSchedules.Sorted = true; 716 720 this.tvSchedules.TabIndex = 1; … … 781 785 this.panelRight.Location = new System.Drawing.Point(996, 0); 782 786 this.panelRight.Name = "panelRight"; 783 this.panelRight.Size = new System.Drawing.Size(128, 3 92);787 this.panelRight.Size = new System.Drawing.Size(128, 389); 784 788 this.panelRight.TabIndex = 3; 785 789 this.panelRight.Visible = false; … … 877 881 this.panelCenter.Location = new System.Drawing.Point(136, 24); 878 882 this.panelCenter.Name = "panelCenter"; 879 this.panelCenter.Size = new System.Drawing.Size(857, 34 4);883 this.panelCenter.Size = new System.Drawing.Size(857, 341); 880 884 this.panelCenter.TabIndex = 7; 885 // 886 // ctxCalendarGrid 887 // 888 this.ctxCalendarGrid.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] { 889 this.ctxCalGridAdd, 890 this.ctxCalGridMkRadAppt, 891 this.ctxCalGridEdit, 892 this.ctxCalGridDelete, 893 this.ctxCalGridCancelRadAppt, 894 this.ctxCalGridCheckIn, 895 this.ctxCalGridUndoCheckin, 896 this.ctxCalGridSep1, 897 this.ctxCalGridNoShow, 898 this.ctxCalGridNoShowUndo, 899 this.ctxCalGridSep2, 900 this.ctxCalGridWalkin, 901 this.ctxCalGridSep3, 902 this.ctxCalGridReprintApptSlip}); 903 this.ctxCalendarGrid.Popup += new System.EventHandler(this.ctxCalendarGrid_Popup); 904 // 905 // ctxCalGridAdd 906 // 907 this.ctxCalGridAdd.Index = 0; 908 this.ctxCalGridAdd.Text = "Add Appointment"; 909 this.ctxCalGridAdd.Click += new System.EventHandler(this.ctxCalGridAdd_Click); 910 // 911 // ctxCalGridMkRadAppt 912 // 913 this.ctxCalGridMkRadAppt.Index = 1; 914 this.ctxCalGridMkRadAppt.Text = "Make Radiology Appointment"; 915 this.ctxCalGridMkRadAppt.Click += new System.EventHandler(this.ctxCalGridMkRadAppt_Click); 916 // 917 // ctxCalGridEdit 918 // 919 this.ctxCalGridEdit.Index = 2; 920 this.ctxCalGridEdit.Text = "Edit Appointment"; 921 this.ctxCalGridEdit.Click += new System.EventHandler(this.ctxCalGridEdit_Click); 922 // 923 // ctxCalGridDelete 924 // 925 this.ctxCalGridDelete.Index = 3; 926 this.ctxCalGridDelete.Text = "Cancel Appointment"; 927 this.ctxCalGridDelete.Click += new System.EventHandler(this.ctxCalGridDelete_Click); 928 // 929 // ctxCalGridCancelRadAppt 930 // 931 this.ctxCalGridCancelRadAppt.Index = 4; 932 this.ctxCalGridCancelRadAppt.Text = "Cancel Radiology Appointment"; 933 this.ctxCalGridCancelRadAppt.Click += new System.EventHandler(this.ctxCalGridCancelRadAppt_Click); 934 // 935 // ctxCalGridCheckIn 936 // 937 this.ctxCalGridCheckIn.Index = 5; 938 this.ctxCalGridCheckIn.Text = "Check In Patient"; 939 this.ctxCalGridCheckIn.Click += new System.EventHandler(this.ctxCalGridCheckIn_Click); 940 // 941 // ctxCalGridUndoCheckin 942 // 943 this.ctxCalGridUndoCheckin.Index = 6; 944 this.ctxCalGridUndoCheckin.Text = "&Undo Check In"; 945 this.ctxCalGridUndoCheckin.Click += new System.EventHandler(this.ctxCalGridUndoCheckin_Click); 946 // 947 // ctxCalGridSep1 948 // 949 this.ctxCalGridSep1.Index = 7; 950 this.ctxCalGridSep1.Text = "-"; 951 // 952 // ctxCalGridNoShow 953 // 954 this.ctxCalGridNoShow.Index = 8; 955 this.ctxCalGridNoShow.Text = "Mark as No Show"; 956 this.ctxCalGridNoShow.Click += new System.EventHandler(this.ctxCalGridNoShow_Click); 957 // 958 // ctxCalGridNoShowUndo 959 // 960 this.ctxCalGridNoShowUndo.Index = 9; 961 this.ctxCalGridNoShowUndo.Text = "Undo NoShow"; 962 this.ctxCalGridNoShowUndo.Click += new System.EventHandler(this.ctxCalGridNoShowUndo_Click); 963 // 964 // ctxCalGridSep2 965 // 966 this.ctxCalGridSep2.Index = 10; 967 this.ctxCalGridSep2.Text = "-"; 968 // 969 // ctxCalGridWalkin 970 // 971 this.ctxCalGridWalkin.Index = 11; 972 this.ctxCalGridWalkin.Text = "Create Wal&k-In Appointment"; 973 this.ctxCalGridWalkin.Click += new System.EventHandler(this.ctxCalGridWalkin_Click); 974 // 975 // ctxCalGridSep3 976 // 977 this.ctxCalGridSep3.Index = 12; 978 this.ctxCalGridSep3.Text = "-"; 979 // 980 // ctxCalGridReprintApptSlip 981 // 982 this.ctxCalGridReprintApptSlip.Index = 13; 983 this.ctxCalGridReprintApptSlip.Text = "&Reprint Appointment Slip"; 984 this.ctxCalGridReprintApptSlip.Click += new System.EventHandler(this.ctxCalGridReprintApptSlip_Click); 985 // 986 // panelBottom 987 // 988 this.panelBottom.Controls.Add(this.statusBar1); 989 this.panelBottom.Dock = System.Windows.Forms.DockStyle.Bottom; 990 this.panelBottom.Location = new System.Drawing.Point(136, 365); 991 this.panelBottom.Name = "panelBottom"; 992 this.panelBottom.Size = new System.Drawing.Size(857, 24); 993 this.panelBottom.TabIndex = 8; 994 // 995 // statusBar1 996 // 997 this.statusBar1.Dock = System.Windows.Forms.DockStyle.Fill; 998 this.statusBar1.Location = new System.Drawing.Point(0, 0); 999 this.statusBar1.Name = "statusBar1"; 1000 this.statusBar1.Size = new System.Drawing.Size(857, 24); 1001 this.statusBar1.SizingGrip = false; 1002 this.statusBar1.TabIndex = 0; 1003 // 1004 // splitter1 1005 // 1006 this.splitter1.Location = new System.Drawing.Point(128, 24); 1007 this.splitter1.Name = "splitter1"; 1008 this.splitter1.Size = new System.Drawing.Size(8, 365); 1009 this.splitter1.TabIndex = 9; 1010 this.splitter1.TabStop = false; 1011 // 1012 // splitter2 1013 // 1014 this.splitter2.Dock = System.Windows.Forms.DockStyle.Right; 1015 this.splitter2.Location = new System.Drawing.Point(993, 24); 1016 this.splitter2.Name = "splitter2"; 1017 this.splitter2.Size = new System.Drawing.Size(3, 365); 1018 this.splitter2.TabIndex = 10; 1019 this.splitter2.TabStop = false; 881 1020 // 882 1021 // calendarGrid1 … … 899 1038 this.calendarGrid1.Resources = ((System.Collections.ArrayList)(resources.GetObject("calendarGrid1.Resources"))); 900 1039 this.calendarGrid1.SelectedAppointment = 0; 901 this.calendarGrid1.Size = new System.Drawing.Size(857, 34 4);1040 this.calendarGrid1.Size = new System.Drawing.Size(857, 341); 902 1041 this.calendarGrid1.StartDate = new System.DateTime(2003, 1, 27, 0, 0, 0, 0); 903 1042 this.calendarGrid1.TabIndex = 0; … … 909 1048 this.calendarGrid1.MouseEnter += new System.EventHandler(this.calendarGrid1_MouseEnter); 910 1049 // 911 // ctxCalendarGrid912 //913 this.ctxCalendarGrid.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {914 this.ctxCalGridAdd,915 this.ctxCalGridMkRadAppt,916 this.ctxCalGridEdit,917 this.ctxCalGridDelete,918 this.ctxCalGridCancelRadAppt,919 this.ctxCalGridCheckIn,920 this.ctxCalGridUndoCheckin,921 this.ctxCalGridSep1,922 this.ctxCalGridNoShow,923 this.ctxCalGridNoShowUndo,924 this.ctxCalGridSep2,925 this.ctxCalGridWalkin,926 this.ctxCalGridSep3,927 this.ctxCalGridReprintApptSlip});928 this.ctxCalendarGrid.Popup += new System.EventHandler(this.ctxCalendarGrid_Popup);929 //930 // ctxCalGridAdd931 //932 this.ctxCalGridAdd.Index = 0;933 this.ctxCalGridAdd.Text = "Add Appointment";934 this.ctxCalGridAdd.Click += new System.EventHandler(this.ctxCalGridAdd_Click);935 //936 // ctxCalGridMkRadAppt937 //938 this.ctxCalGridMkRadAppt.Index = 1;939 this.ctxCalGridMkRadAppt.Text = "Make Radiology Appointment";940 this.ctxCalGridMkRadAppt.Click += new System.EventHandler(this.ctxCalGridMkRadAppt_Click);941 //942 // ctxCalGridEdit943 //944 this.ctxCalGridEdit.Index = 2;945 this.ctxCalGridEdit.Text = "Edit Appointment";946 this.ctxCalGridEdit.Click += new System.EventHandler(this.ctxCalGridEdit_Click);947 //948 // ctxCalGridDelete949 //950 this.ctxCalGridDelete.Index = 3;951 this.ctxCalGridDelete.Text = "Cancel Appointment";952 this.ctxCalGridDelete.Click += new System.EventHandler(this.ctxCalGridDelete_Click);953 //954 // ctxCalGridCancelRadAppt955 //956 this.ctxCalGridCancelRadAppt.Index = 4;957 this.ctxCalGridCancelRadAppt.Text = "Cancel Radiology Appointment";958 this.ctxCalGridCancelRadAppt.Click += new System.EventHandler(this.ctxCalGridCancelRadAppt_Click);959 //960 // ctxCalGridCheckIn961 //962 this.ctxCalGridCheckIn.Index = 5;963 this.ctxCalGridCheckIn.Text = "Check In Patient";964 this.ctxCalGridCheckIn.Click += new System.EventHandler(this.ctxCalGridCheckIn_Click);965 //966 // ctxCalGridUndoCheckin967 //968 this.ctxCalGridUndoCheckin.Index = 6;969 this.ctxCalGridUndoCheckin.Text = "&Undo Check In";970 this.ctxCalGridUndoCheckin.Click += new System.EventHandler(this.ctxCalGridUndoCheckin_Click);971 //972 // ctxCalGridSep1973 //974 this.ctxCalGridSep1.Index = 7;975 this.ctxCalGridSep1.Text = "-";976 //977 // ctxCalGridNoShow978 //979 this.ctxCalGridNoShow.Index = 8;980 this.ctxCalGridNoShow.Text = "Mark as No Show";981 this.ctxCalGridNoShow.Click += new System.EventHandler(this.ctxCalGridNoShow_Click);982 //983 // ctxCalGridNoShowUndo984 //985 this.ctxCalGridNoShowUndo.Index = 9;986 this.ctxCalGridNoShowUndo.Text = "Undo NoShow";987 this.ctxCalGridNoShowUndo.Click += new System.EventHandler(this.ctxCalGridNoShowUndo_Click);988 //989 // ctxCalGridSep2990 //991 this.ctxCalGridSep2.Index = 10;992 this.ctxCalGridSep2.Text = "-";993 //994 // ctxCalGridWalkin995 //996 this.ctxCalGridWalkin.Index = 11;997 this.ctxCalGridWalkin.Text = "Create Wal&k-In Appointment";998 this.ctxCalGridWalkin.Click += new System.EventHandler(this.ctxCalGridWalkin_Click);999 //1000 // ctxCalGridSep31001 //1002 this.ctxCalGridSep3.Index = 12;1003 this.ctxCalGridSep3.Text = "-";1004 //1005 // ctxCalGridReprintApptSlip1006 //1007 this.ctxCalGridReprintApptSlip.Index = 13;1008 this.ctxCalGridReprintApptSlip.Text = "&Reprint Appointment Slip";1009 this.ctxCalGridReprintApptSlip.Click += new System.EventHandler(this.ctxCalGridReprintApptSlip_Click);1010 //1011 // panelBottom1012 //1013 this.panelBottom.Controls.Add(this.statusBar1);1014 this.panelBottom.Dock = System.Windows.Forms.DockStyle.Bottom;1015 this.panelBottom.Location = new System.Drawing.Point(136, 368);1016 this.panelBottom.Name = "panelBottom";1017 this.panelBottom.Size = new System.Drawing.Size(857, 24);1018 this.panelBottom.TabIndex = 8;1019 //1020 // statusBar11021 //1022 this.statusBar1.Dock = System.Windows.Forms.DockStyle.Fill;1023 this.statusBar1.Location = new System.Drawing.Point(0, 0);1024 this.statusBar1.Name = "statusBar1";1025 this.statusBar1.Size = new System.Drawing.Size(857, 24);1026 this.statusBar1.SizingGrip = false;1027 this.statusBar1.TabIndex = 0;1028 //1029 // splitter11030 //1031 this.splitter1.Location = new System.Drawing.Point(128, 24);1032 this.splitter1.Name = "splitter1";1033 this.splitter1.Size = new System.Drawing.Size(8, 368);1034 this.splitter1.TabIndex = 9;1035 this.splitter1.TabStop = false;1036 //1037 // splitter21038 //1039 this.splitter2.Dock = System.Windows.Forms.DockStyle.Right;1040 this.splitter2.Location = new System.Drawing.Point(993, 24);1041 this.splitter2.Name = "splitter2";1042 this.splitter2.Size = new System.Drawing.Size(3, 368);1043 this.splitter2.TabIndex = 10;1044 this.splitter2.TabStop = false;1045 //1046 1050 // CGView 1047 1051 // 1048 1052 this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); 1049 this.ClientSize = new System.Drawing.Size(1124, 3 92);1053 this.ClientSize = new System.Drawing.Size(1124, 389); 1050 1054 this.Controls.Add(this.panelCenter); 1051 1055 this.Controls.Add(this.panelBottom); … … 1086 1090 private Hashtable m_htModifySchedule; 1087 1091 private Hashtable m_htChangeAppts; 1088 private BMXNetConnectInfo m_ConnectInfo = null;1089 public BMXNetConnectInfo.BMXNetEventDelegate BMXNetEvent;1090 1092 1091 1093 #endregion Fields … … 1308 1310 DataTable dt = this.DocManager.GlobalDataSet.Tables["ResourceUser"]; 1309 1311 DataView dv = new DataView(dt, "", "RESOURCENAME ASC", DataViewRowState.OriginalRows); 1310 string sDuz = this.DocManager.ConnectInfo.DUZ;1312 string sDuz = CGDocumentManager.Current.RemoteSession.User.Duz; 1311 1313 bool bModSchedule = false; 1312 1314 DataRowView[] drvA = dv.FindRows(sResource); … … 1569 1571 private bool IsThisARadiologyResource(string sResource) 1570 1572 { 1573 //smh - change in v 1.7... if the resource is not linked to a PIMS clinic, this method fails. 1574 //This happens if there is just one resource that is not linked, which makes it impossible to 1575 //make any appointments, because this method gets called at any time a menu is opened. 1576 //So we change res.Field<int> to res.Field<int?> 1577 1571 1578 // see if resource is mapped to a Radiology Hospital Location. 1572 1579 return ( //select all Hospital Locations which are radiology locations … … 1575 1582 //join this to the resources table using the foreign ID (plain jane relational join) 1576 1583 join res in CGDocumentManager.Current.GlobalDataSet.Tables["Resources"].AsEnumerable() 1577 on hl.Field<int>("HOSPITAL_LOCATION_ID") equals res.Field<int>("HOSPITAL_LOCATION_ID") 1584 //on hl.Field<int>("HOSPITAL_LOCATION_ID") equals res.Field<int>("HOSPITAL_LOCATION_ID") //change in 1.7 1585 on hl.Field<int>("HOSPITAL_LOCATION_ID") equals res.Field<int?>("HOSPITAL_LOCATION_ID") 1578 1586 //then filter this down to the resource that we have 1579 1587 where res.Field<string>("RESOURCE_NAME") == sResource … … 1766 1774 doc.ResourceID = Convert.ToInt32(sResourceID); 1767 1775 1768 bool bLock = DocManager.ConnectInfo.bmxNetLib.Lock("^BSDXRES(" + sResourceID + ")", "+");1776 bool bLock = CGDocumentManager.Current.RemoteSession.Lock("^BSDXRES(" + sResourceID + ")", "+"); 1769 1777 if (bLock == false) 1770 1778 { … … 1939 1947 dt = this.DocManager.GlobalDataSet.Tables["ResourceUser"]; 1940 1948 dv = new DataView(dt, "", "RESOURCENAME ASC", DataViewRowState.OriginalRows); 1941 1942 //dv.RowFilter = "USERNAME = '" + filte_name + "'"; 1943 dv.RowFilter = String.Format("USERNAME = '{0}'", this.DocManager.ConnectInfo.UserName.Replace("'", "''")); 1949 dv.RowFilter = String.Format("USERNAME = '{0}'", CGDocumentManager.Current.RemoteSession.User.Name.Replace("'", "''")); 1944 1950 1945 1951 for (int j=0; j < dv.Count; j++) … … 2529 2535 { 2530 2536 string msg; 2531 if ( BMXNetLib.Piece(ex.Message, "~", 1) == "-10") // -10 means that BSDXAPI reported an error.2532 msg = BMXNetLib.Piece(ex.Message, "~", 4);2537 if (M.Piece(ex.Message, "~", 1) == "-10") // -10 means that BSDXAPI reported an error. 2538 msg = M.Piece(ex.Message, "~", 4); 2533 2539 else 2534 2540 msg = ex.Message; … … 2640 2646 { 2641 2647 string msg; 2642 if ( BMXNetLib.Piece(ex.Message, "~", 1) == "-10") // -10 means that BSDXAPI reported an error.2643 msg = BMXNetLib.Piece(ex.Message, "~", 4);2648 if (M.Piece(ex.Message, "~", 1) == "-10") // -10 means that BSDXAPI reported an error. 2649 msg = M.Piece(ex.Message, "~", 4); 2644 2650 else 2645 2651 msg = ex.Message; … … 2748 2754 { 2749 2755 string msg; 2750 if ( BMXNetLib.Piece(ex.Message, "~", 1) == "-10") // -10 means that BSDXAPI reported an error.2751 msg = BMXNetLib.Piece(ex.Message, "~", 4);2756 if (M.Piece(ex.Message, "~", 1) == "-10") // -10 means that BSDXAPI reported an error. 2757 msg = M.Piece(ex.Message, "~", 4); 2752 2758 else 2753 2759 msg = ex.Message; … … 2771 2777 /// <param name="e">BMXEvent Args: 2772 2778 /// e.BMXEvent is free text for Event Type; e.BMXParam is free text for Event Arguments</param> 2773 private void BMXNetEventHandler(Object obj, BMXNet.BMXNetEventArgs e)2779 private void BMXNetEventHandler(Object obj, RemoteEventArgs e) 2774 2780 { 2775 2781 try … … 2779 2785 2780 2786 // if event is Autofire event 2781 if (e. BMXEvent== "BMXNet AutoFire")2787 if (e.EventType == "BMXNet AutoFire") 2782 2788 { 2783 2789 Debug.Write("CGView caught AutoFire event.\n"); … … 2792 2798 2793 2799 // if event is BSDX SCHEDULE 2794 else if (e. BMXEvent== "BSDX SCHEDULE")2800 else if (e.EventType == "BSDX SCHEDULE") 2795 2801 { 2796 2802 //See if any of the resources in the event argument matches BSDX Schedule. … … 2800 2806 { 2801 2807 sResourceName = m_Document.m_sResourcesArray[j].ToString(); 2802 if (e. BMXParam== sResourceName)2808 if (e.Details == sResourceName) 2803 2809 { 2804 2810 Debug.Write("CGView caught BSDX SCHEDULE event.\n"); … … 2868 2874 { 2869 2875 //Signal RPMS to raise an event 2870 m_ConnectInfo.RaiseEvent(sEvent, sParams, false);2876 CGDocumentManager.Current.RemoteSession.EventServices.TriggerEvent(sEvent, sParams, false); 2871 2877 } 2872 2878 catch (Exception ex) … … 2914 2920 try 2915 2921 { 2916 bool bLock = DocManager.ConnectInfo.Lock("^BSDXMGR", "+", "");2922 bool bLock = CGDocumentManager.Current.RemoteSession.Lock("^BSDXMGR", "+"); 2917 2923 if (bLock == false) 2918 2924 { … … 2929 2935 m_DocManager.GlobalDataSet.Tables["ResourceUser"].Clear(); 2930 2936 m_DocManager.LoadResourceUserTable(false); 2931 bLock = DocManager.ConnectInfo.bmxNetLib.Lock("^BSDXMGR", "-");2937 bLock = CGDocumentManager.Current.RemoteSession.Lock("^BSDXMGR", "-"); 2932 2938 } 2933 2939 catch (ApplicationException aex) … … 3195 3201 } 3196 3202 3197 /// <summary> 3198 /// Useless code now... Good place to test something. 3199 /// </summary> 3200 /// <param name="sender"></param> 3201 /// <param name="e"></param> 3202 private void mnuTest1_Click(object sender, System.EventArgs e) 3203 { 3204 ReaderWriterLock m_rwl = this.DocManager.ConnectInfo.bmxNetLib.BMXRWL; 3203 private void CGView_Closing(object sender, System.ComponentModel.CancelEventArgs e) 3204 { 3205 3205 try 3206 3206 { 3207 m_rwl.AcquireWriterLock(50); 3208 Debug.Write("\nTest Button 1 Acquired first lock\n"); 3209 m_rwl.AcquireWriterLock(50); 3210 Debug.Write("Test Button 1 Acquired second lock\n"); 3211 this.DocManager.ViewRefresh(); 3212 Thread.Sleep(5000); 3213 try 3214 { 3215 } 3216 catch 3217 { 3218 } 3219 finally 3220 { 3221 m_rwl.ReleaseWriterLock(); 3222 Debug.Write ("Test Button 1 released first lock.\n"); 3223 m_rwl.ReleaseWriterLock(); 3224 Debug.Write ("Test Button 1 released second lock.\n"); 3225 } 3226 3227 return; 3228 } 3229 catch (Exception ex) 3230 { 3231 Debug.Write("Test Button 1 exception: " + ex.Message + "\n"); 3232 } 3233 } 3234 3235 private void CGView_Closing(object sender, System.ComponentModel.CancelEventArgs e) 3236 { 3237 try 3238 { 3239 m_ConnectInfo.BMXNetEvent -= m_bmxDelegate; 3207 CGDocumentManager.Current.RemoteSession.EventServices.RpmsEvent -= BMXNetEventHandler; 3240 3208 this.calendarGrid1.CloseGrid(); 3241 3209 } … … 3966 3934 } 3967 3935 3936 private void mnuViewBrokerLog_Click(object sender, EventArgs e) 3937 { 3938 var view = new RPCLoggerView(); 3939 view.Show(); 3940 } 3941 3968 3942 3969 3943 }//End class -
Scheduling/trunk/cs/bsdx0200GUISourceCode/ClinicalScheduling.csproj
r1473 r1474 110 110 </PropertyGroup> 111 111 <ItemGroup> 112 <Reference Include="BMXNET40, Version=4.0.0.1, Culture=neutral, processorArchitecture=MSIL"> 113 <SpecificVersion>False</SpecificVersion> 114 <HintPath>bin\Release\BMXNET40.dll</HintPath> 115 </Reference> 116 <Reference Include="BMXWIN40, Version=4.0.0.1, Culture=neutral, processorArchitecture=MSIL"> 117 <SpecificVersion>False</SpecificVersion> 118 <HintPath>bin\Release\BMXWIN40.dll</HintPath> 119 </Reference> 120 <Reference Include="PrintPreview, Version=1.0.4570.15574, Culture=neutral, processorArchitecture=MSIL"> 121 <SpecificVersion>False</SpecificVersion> 122 <HintPath>bin\Release\PrintPreview.dll</HintPath> 123 </Reference> 112 124 <Reference Include="System"> 113 125 <Name>System</Name> … … 148 160 <Compile Include="Provider.cs" /> 149 161 <Compile Include="RadiologyExam.cs" /> 162 <Compile Include="RPCLogger.cs" /> 163 <Compile Include="RPCLoggerView.cs"> 164 <SubType>Form</SubType> 165 </Compile> 166 <Compile Include="RPCLoggerView.Designer.cs"> 167 <DependentUpon>RPCLoggerView.cs</DependentUpon> 168 </Compile> 150 169 <Compile Include="strings.ar.Designer.cs"> 151 170 <AutoGen>True</AutoGen> … … 431 450 <EmbeddedResource Include="LoadingSplash.resx"> 432 451 <DependentUpon>LoadingSplash.cs</DependentUpon> 452 </EmbeddedResource> 453 <EmbeddedResource Include="RPCLoggerView.resx"> 454 <DependentUpon>RPCLoggerView.cs</DependentUpon> 433 455 </EmbeddedResource> 434 456 <EmbeddedResource Include="strings.ar.resx"> … … 478 500 <Folder Include="Properties\" /> 479 501 </ItemGroup> 480 <ItemGroup>481 <ProjectReference Include="..\..\BMX2\BMXNet\BMXNet.csproj">482 <Project>{DE8E4CC9-4F3A-4E32-8DFE-EE5692E8FC45}</Project>483 <Name>BMXNet</Name>484 </ProjectReference>485 <ProjectReference Include="..\EnhancedPrintPreview\PrintPreview\PrintPreview.csproj">486 <Project>{9E8D433B-EFD1-4253-BD2C-C4E0DB0BFD0E}</Project>487 <Name>PrintPreview</Name>488 </ProjectReference>489 </ItemGroup>490 502 <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> 491 503 <PropertyGroup> -
Scheduling/trunk/cs/bsdx0200GUISourceCode/ClinicalScheduling.csproj.user
r1473 r1474 37 37 </RemoteDebugMachine> 38 38 <StartAction>Project</StartAction> 39 <StartArguments>/s=10.0.1.13 /p=9 261 /a=shabiel12 /v=catdog.22</StartArguments>39 <StartArguments>/s=10.0.1.13 /p=9431 /a=shabiel12 /v=catdog.22</StartArguments> 40 40 <StartPage> 41 41 </StartPage> -
Scheduling/trunk/cs/bsdx0200GUISourceCode/ClinicalScheduling.sln
r1473 r1474 7 7 EndProjectSection 8 8 EndProject 9 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = " PrintPreview", "..\EnhancedPrintPreview\PrintPreview\PrintPreview.csproj", "{9E8D433B-EFD1-4253-BD2C-C4E0DB0BFD0E}"9 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IndianHealthService.BMXNet", "..\BMX4\IndianHealthService.BMXNet\IndianHealthService.BMXNet.csproj", "{DE8E4CC9-4F3A-4E32-8DFE-EE5692E8FC45}" 10 10 EndProject 11 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = " BMXNet", "..\..\BMX2\BMXNet\BMXNet.csproj", "{DE8E4CC9-4F3A-4E32-8DFE-EE5692E8FC45}"11 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IndianHealthService.BMXNet.WinForm", "..\BMX4\IndianHealthService.BMXNet.WinForm\IndianHealthService.BMXNet.WinForm.csproj", "{3B9011B5-59F4-4F6B-ADC7-54ADC6948F4D}" 12 12 EndProject 13 13 Global … … 29 29 {DE8E4CC9-4F3A-4E32-8DFE-EE5692E8FC45}.Release|Any CPU.ActiveCfg = Release|Any CPU 30 30 {DE8E4CC9-4F3A-4E32-8DFE-EE5692E8FC45}.Release|Any CPU.Build.0 = Release|Any CPU 31 {3B9011B5-59F4-4F6B-ADC7-54ADC6948F4D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 32 {3B9011B5-59F4-4F6B-ADC7-54ADC6948F4D}.Debug|Any CPU.Build.0 = Debug|Any CPU 33 {3B9011B5-59F4-4F6B-ADC7-54ADC6948F4D}.Release|Any CPU.ActiveCfg = Release|Any CPU 34 {3B9011B5-59F4-4F6B-ADC7-54ADC6948F4D}.Release|Any CPU.Build.0 = Release|Any CPU 31 35 EndGlobalSection 32 36 GlobalSection(SolutionProperties) = preSolution -
Scheduling/trunk/cs/bsdx0200GUISourceCode/DAL.cs
r1186 r1474 16 16 public class DAL 17 17 { 18 private BMXNetConnectInfo_thisConnection; // set in constructor18 private RemoteSession _thisConnection; // set in constructor 19 19 20 20 delegate DataTable RPMSDataTableDelegate(string CommandString, string TableName); // for use in calling (Sync and Async) … … 25 25 /// </summary> 26 26 /// <param name="conn">The current connection to use</param> 27 public DAL( BMXNetConnectInfoconn)27 public DAL(RemoteSession conn) 28 28 { 29 29 this._thisConnection = conn; … … 39 39 { 40 40 string cmd = String.Format("BMX VERSION INFO^{0}", nmsp); 41 return RPMSDataTable(cmd, "");41 return _thisConnection.TableFromCommand(cmd); 42 42 } 43 43 … … 50 50 { 51 51 string cmd = String.Format("BSDX SCHEDULING USER INFO^{0}", DUZ); 52 return RPMSDataTable(cmd, "");52 return _thisConnection.TableFromCommand(cmd); 53 53 } 54 54 … … 65 65 /// BLUE (NJ3,0), [0;7] 66 66 ///</returns> 67 public DataTable GetAccessTypes( )67 public DataTable GetAccessTypes(DataSet dataSetToTakeTable, string tablename) 68 68 { 69 69 string sCommandText = "SELECT * FROM BSDX_ACCESS_TYPE"; 70 DataTable table = RPMSDataTable(sCommandText, "");70 DataTable table = _thisConnection.TableFromSQL(sCommandText, dataSetToTakeTable, tablename); 71 71 DataColumn dcKey = table.Columns["BMXIEN"]; 72 72 DataColumn[] dcKeys = new DataColumn[1]; … … 93 93 string sEnd = FMDateTime.Create(EndDate).DateOnly.FMDateString; 94 94 string cmd = String.Format("BSDX CLINIC LETTERS^{0}^{1}^{2}", sClinicList, sBegin, sEnd); 95 return RPMSDataTable(cmd, "");95 return _thisConnection.TableFromCommand(cmd); 96 96 } 97 97 … … 107 107 { 108 108 string cmd = String.Format("BSDX RESOURCE LETTERS^{0}", sClinicList); 109 return RPMSDataTable(cmd, "");109 return _thisConnection.TableFromCommand(cmd); 110 110 } 111 111 … … 126 126 string sEnd = FMDateTime.Create(EndDate).DateOnly.FMDateString; 127 127 string cmd = String.Format("BSDX REBOOK CLINIC LIST^{0}^{1}^{2}", sClinicList, sBegin, sEnd); 128 return RPMSDataTable(cmd, "");128 return _thisConnection.TableFromCommand(cmd); 129 129 } 130 130 … … 139 139 { 140 140 string cmd = String.Format("BSDX REBOOK LIST^{0}", sApptList); 141 return RPMSDataTable(cmd, "");141 return _thisConnection.TableFromCommand(cmd); 142 142 } 143 143 … … 157 157 string sEnd = FMDateTime.Create(EndDate).DateOnly.FMDateString; 158 158 string cmd = String.Format("BSDX CANCEL CLINIC LIST^{0}^{1}^{2}", sClinicList, sBegin, sEnd); 159 return RPMSDataTable(cmd, "");159 return _thisConnection.TableFromCommand(cmd); 160 160 } 161 161 … … 173 173 string sEnd = FMDateTime.Create(EndDate).DateOnly.FMDateString; 174 174 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); 176 176 } 177 177 … … 185 185 { 186 186 string cmd = string.Format("BSDX REMOVE CHECK-IN^{0}", ApptID); 187 return RPMSDataTable(cmd, "");187 return _thisConnection.TableFromCommand(cmd); 188 188 } 189 189 … … 197 197 { 198 198 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); 200 200 return (from row in tbl.AsEnumerable() 201 201 select new RadiologyExam … … 218 218 { 219 219 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)); 221 221 return result == "1" ? true : false; 222 222 } … … 230 230 public bool CancelRadiologyExam(int DFN, int examIEN) 231 231 { 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)); 233 233 return result == "1" ? true : false; 234 234 } … … 241 241 public bool CanCancelRadExam(int examIEN) 242 242 { 243 string result = _thisConnection. bmxNetLib.TransmitRPC("BSDX CAN HOLD RAD EXAM", examIEN.ToString());243 string result = _thisConnection.TransmitRPC("BSDX CAN HOLD RAD EXAM", examIEN.ToString()); 244 244 return result == "1" ? true : false; 245 245 } … … 256 256 get 257 257 { 258 string val = _thisConnection. bmxNetLib.TransmitRPC("BSDX GET PARAM", "BSDX AUTO PRINT RS"); //1 = true; 0 = false; "" = not set258 string val = _thisConnection.TransmitRPC("BSDX GET PARAM", "BSDX AUTO PRINT RS"); //1 = true; 0 = false; "" = not set 259 259 return val == "1" ? true : false; 260 260 } 261 261 set 262 262 { 263 TransmitRPCAsync _asyncTransmitter = new TransmitRPCAsync(_thisConnection. bmxNetLib.TransmitRPC);263 TransmitRPCAsync _asyncTransmitter = new TransmitRPCAsync(_thisConnection.TransmitRPC); 264 264 // 0 = success; anything else is wrong. Not being tested here as its success is not critical to application use. 265 265 _asyncTransmitter.BeginInvoke("BSDX SET PARAM", String.Format("{0}^{1}", "BSDX AUTO PRINT RS", value ? "1" : "0"), null, null); … … 278 278 get 279 279 { 280 string val = _thisConnection. bmxNetLib.TransmitRPC("BSDX GET PARAM", "BSDX AUTO PRINT AS"); //1 = true; 0 = false; "" = not set280 string val = _thisConnection.TransmitRPC("BSDX GET PARAM", "BSDX AUTO PRINT AS"); //1 = true; 0 = false; "" = not set 281 281 return val == "1" ? true : false; 282 282 } 283 283 set 284 284 { 285 TransmitRPCAsync _asyncTransmitter = new TransmitRPCAsync(_thisConnection. bmxNetLib.TransmitRPC);285 TransmitRPCAsync _asyncTransmitter = new TransmitRPCAsync(_thisConnection.TransmitRPC); 286 286 // 0 = success; anything else is wrong. Not being tested here as its success is not critical to application use. 287 287 _asyncTransmitter.BeginInvoke("BSDX SET PARAM", String.Format("{0}^{1}", "BSDX AUTO PRINT AS", value ? "1" : "0"), null, null); … … 303 303 DataTable dtOut; 304 304 305 #if TRACE306 DateTime sendTime = DateTime.Now;307 #endif308 305 try 309 306 { 310 RPMSDataTableDelegate rdtd = new RPMSDataTableDelegate(_thisConnection. RPMSDataTable);307 RPMSDataTableDelegate rdtd = new RPMSDataTableDelegate(_thisConnection.TableFromSQL); 311 308 dtOut = (DataTable)rdtd.Invoke(sSQL, sTableName); 312 309 } … … 317 314 throw ex; 318 315 } 319 320 #if TRACE321 DateTime receiveTime = DateTime.Now;322 TimeSpan executionTime = receiveTime - sendTime;323 Debug.Write("RPMSDataTable Execution Time: " + executionTime.Milliseconds + " ms.\n");324 #endif325 316 326 317 return dtOut; -
Scheduling/trunk/cs/bsdx0200GUISourceCode/DManagement.cs
r1075 r1474 140 140 this.m_dsGlobal = m_DocManager.GlobalDataSet; 141 141 142 MgrEventDelegate = new BMXNetConnectInfo.BMXNetEventDelegate(MgrEventHandler); 143 m_DocManager.ConnectInfo.BMXNetEvent += MgrEventDelegate; 144 m_DocManager.ConnectInfo.SubscribeEvent("BSDX WORKSTATION REPORT"); 142 m_DocManager.RemoteSession.EventServices.RpmsEvent += MgrEventHandler; 143 m_DocManager.RemoteSession.EventServices.Subscribe("BSDX WORKSTATION REPORT"); 145 144 m_dtWSGrid = new DataTable("WSGrid"); 146 145 m_dtWSGrid.Columns.Add("UserName", typeof(System.String)); … … 1899 1898 m_dsGlobal.Tables["AccessTypes"].Clear(); 1900 1899 m_dsGlobal.Tables["AccessGroupType"].Clear(); 1901 DataTable dt1 = m_DocManager.DAL.GetAccessTypes(); 1902 m_dsGlobal.Tables["AccessTypes"].Merge(dt1); 1903 m_dsGlobal.Tables.Add(dt1); 1900 //PORT TODO: This may fail. 1901 DataTable dt1 = m_DocManager.DAL.GetAccessTypes(m_dsGlobal, "AccessTypes"); 1902 //m_dsGlobal.Tables["AccessTypes"].Merge(dt1); //smh -commented out for BMX4 1903 //m_dsGlobal.Tables.Add(dt1); //smh -commented out for BMX4 1904 1904 //Fix Groups 1905 1905 //m_DocManager.LoadAccessTypesTable(); … … 2329 2329 { 2330 2330 this.m_dtWSGrid.Clear(); 2331 this.m_DocManager.ConnectInfo.RaiseEvent("BSDX CALL WORKSTATIONS", "A", true); 2332 } 2333 2334 private BMXNetConnectInfo.BMXNetEventDelegate MgrEventDelegate; 2331 this.m_DocManager.RemoteSession.EventServices.TriggerEvent("BSDX CALL WORKSTATIONS", "A", true); 2332 } 2333 2335 2334 delegate void UpdateWorkstationGridDelegate(string sParam); 2336 2335 2337 private void MgrEventHandler(Object obj, BMXNet.BMXNetEventArgs e)2336 private void MgrEventHandler(Object obj, RemoteEventArgs e) 2338 2337 { 2339 2338 try 2340 2339 { 2341 if (e. BMXEvent== "BSDX WORKSTATION REPORT")2340 if (e.EventType == "BSDX WORKSTATION REPORT") 2342 2341 { 2343 2342 Debug.Write("DManagement Got Workstation Report\n"); … … 2345 2344 if (this.InvokeRequired == true) //ensures that handle is created 2346 2345 { 2347 this.Invoke(uWSGd, new object[] { e. BMXParam});2346 this.Invoke(uWSGd, new object[] { e.Details }); 2348 2347 } 2349 2348 else 2350 2349 { 2351 UpdateWorkstationGrid(e. BMXParam);2350 UpdateWorkstationGrid(e.Details); 2352 2351 } 2353 2352 } … … 2363 2362 string sDelim = "~"; 2364 2363 DataRow dr = this.m_dtWSGrid.NewRow(); 2365 dr["UserName"] = BMXNetLib.Piece(sParam,sDelim,1);2366 dr["Handle"] = BMXNetLib.Piece(sParam,sDelim,2);2367 dr["Version"] = BMXNetLib.Piece(sParam,sDelim,3);2368 dr["Views"] = BMXNetLib.Piece(sParam,sDelim,4);2364 dr["UserName"] = M.Piece(sParam,sDelim,1); 2365 dr["Handle"] = M.Piece(sParam,sDelim,2); 2366 dr["Version"] = M.Piece(sParam,sDelim,3); 2367 dr["Views"] = M.Piece(sParam,sDelim,4); 2369 2368 m_dtWSGrid.Rows.Add(dr); 2370 2369 } … … 2372 2371 private void DManagement_Closing(object sender, System.ComponentModel.CancelEventArgs e) 2373 2372 { 2374 m_DocManager.ConnectInfo.UnSubscribeEvent("BSDX WORKSTATION REPORT");2373 CGDocumentManager.Current.RemoteSession.EventServices.Unsubscribe("BSDX WORKSTATION REPORT"); 2375 2374 } 2376 2375 … … 2389 2388 return; 2390 2389 2391 this.m_DocManager.ConnectInfo.RaiseEvent("BSDX ADMIN MESSAGE", sMessage, false);2390 this.m_DocManager.RemoteSession.EventServices.TriggerEvent("BSDX ADMIN MESSAGE", sMessage, false); 2392 2391 } 2393 2392 … … 2398 2397 return; 2399 2398 } 2400 this.m_DocManager.ConnectInfo.RaiseEvent("BSDX ADMIN SHUTDOWN", txtSendMessage.Text, false);2399 this.m_DocManager.RemoteSession.EventServices.TriggerEvent("BSDX ADMIN SHUTDOWN", txtSendMessage.Text, false); 2401 2400 } 2402 2401 #endregion Workstations -
Scheduling/trunk/cs/bsdx0200GUISourceCode/Printing.cs
r1469 r1474 217 217 // Draw Header 218 218 219 string division = CGDocumentManager.Current. ConnectInfo.DivisionName;219 string division = CGDocumentManager.Current.RemoteSession.User.Division.Name; 220 220 int divisionStringHeight = (int)g.MeasureString(division.ToString(), fontBody, e.PageBounds.Width - (int)(10 * widthRatio) - HardMarginX).Height; 221 221 … … 691 691 692 692 // Draw Header 693 string division = CGDocumentManager.Current. ConnectInfo.DivisionName;693 string division = CGDocumentManager.Current.RemoteSession.User.Division.Name; 694 694 int divisionStringHeight = (int)g.MeasureString(division.ToString(), fontBody, e.MarginBounds.Width).Height; 695 695 Rectangle headerArea = new Rectangle()
Note:
See TracChangeset
for help on using the changeset viewer.