<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Earl Wertheimer &#8211; The Oscar Galaxy</title>
	<atom:link href="https://oscargalaxy.org/author/earlwer/feed/" rel="self" type="application/rss+xml" />
	<link>https://oscargalaxy.org</link>
	<description>Open Source Clinical Application Resource</description>
	<lastBuildDate>Fri, 12 Dec 2025 19:16:45 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://oscargalaxy.org/wp-content/uploads/2022/12/cropped-Untitled-design-12-32x32.png</url>
	<title>Earl Wertheimer &#8211; The Oscar Galaxy</title>
	<link>https://oscargalaxy.org</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>drugref database backup</title>
		<link>https://oscargalaxy.org/download/drugref-database-backup/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Fri, 12 Dec 2025 19:16:45 +0000</pubDate>
				<guid isPermaLink="false">https://oscargalaxy.org/?post_type=wpdmpro&#038;p=10003</guid>

					<description><![CDATA[This is a backup of the drugref database, dated Dec 5,2025. It was made using a recent v19 Oscar installation. It can be used to update older Oscar installations. Normally, the database can be updated using the Administration, Integration, Update Drugref option. The process uploads the allfiles.zip file from https://www.canada.ca/en/health-canada/services/drugs-health-products/drug-products/drug-product-database/what-data-extract-drug-product-database.html The existing Oscar drugref database [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>This is a backup of the drugref database, dated Dec 5,2025. It was made using a recent v19 Oscar installation.<br />
It can be used to update older Oscar installations.</p>
<p>Normally, the database can be updated using the Administration, Integration, Update Drugref option.</p>
<p>The process uploads the allfiles.zip file from<br />
https://www.canada.ca/en/health-canada/services/drugs-health-products/drug-products/drug-product-database/what-data-extract-drug-product-database.html</p>
<p>The existing Oscar drugref database is erased, the allfiles.zip is downloaded, contents extracted and the drugref database is rebuilt.</p>
<p>If there is ANY problem with the process, you will probably be left with an empty drugref database ;-(<br />
This has happened in the past due to changes in the file format and different file location.<br />
Older versions of Oscar will be unable to update drugref because of these issues.</p>
<p>You can easily restore this backup into your older or failed installation until the issue is resolved.<br />
The drugref database has not changed substantially for a very long time.</p>
<p>The drugref backup is 45.5 megs</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Encounter Text Search Sections &#8211; CPP, OtherMeds, Social Hx, Medical Hx, Concerns, Reminders, Family Hx, RiskFactors, TicklerNote</title>
		<link>https://oscargalaxy.org/download/cpp-encounter-text-search-sections-othermeds-socialhistory-medicalhistory-concerns-reminders-familyhistory-riskfactors-ticklernote/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Wed, 05 Nov 2025 05:46:02 +0000</pubDate>
				<guid isPermaLink="false">https://oscargalaxy.org/?post_type=wpdmpro&#038;p=9950</guid>

					<description><![CDATA[This is an updated Encounter text search that does NOT use the eChart table. It will search the selected section of the Encounter screen. It uses the issue table to find the corresponding issue_id for each section on the periphery of the encounter. The sections are OtherMeds, SocialHistory, MedicalHistory, Concerns, Reminders, FamilyHistory, RiskFactors and TicklerNote. [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>This is an updated Encounter text search that does NOT use the eChart table.</p>
<p>It will search the selected section of the Encounter screen.</p>
<p>It uses the <strong>issue</strong> table to find the corresponding issue_id for each section on the periphery of the encounter.<br />
The sections are OtherMeds, SocialHistory, MedicalHistory, Concerns, Reminders, FamilyHistory, RiskFactors and TicklerNote.<br />
These are NOT fixed and could be different for every Oscar installation. The normal values are 64 to 71.</p>
<p>If you choose the CPP/Encounter section, it will ONLY search within that section.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SND Primary Care Network Change Program Referral</title>
		<link>https://oscargalaxy.org/download/snd-primary-care-network-change-program-referral/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Fri, 24 Oct 2025 17:33:43 +0000</pubDate>
				<guid isPermaLink="false">https://oscargalaxy.org/?post_type=wpdmpro&#038;p=9936</guid>

					<description><![CDATA[for Surrey-North Delta, Primary Care Network]]></description>
										<content:encoded><![CDATA[<p>for Surrey-North Delta, Primary Care Network</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Migrating Oscar to your own server</title>
		<link>https://oscargalaxy.org/migrating-oscar-to-your-own-server/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Wed, 10 Sep 2025 16:28:28 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<guid isPermaLink="false">https://oscargalaxy.org/?p=9846</guid>

					<description><![CDATA[If you are ready to take control of your Oscar server this is the full server and database migration process. You will have to get a full backup from your current OSP. They usually charge for this process and you should probably do this process twice. The 1st time is to test the conversion and [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>If you are ready to take control of your Oscar server this is the full server and database migration process.</p>
<p>You will have to get a full backup from your current OSP. They usually charge for this process and you should probably do this process twice. The 1st time is to test the conversion and the 2nd time is the final transfer.</p>
<p>This post is a work-in-progress. Once completed, the instructions will be added to the online manual.</p>
<p>The OSP will make 2 backup files and put them online, on a secure server. The database backup is usually small. Just a few Gb. THe document backup can be considerably larger, depending on the number of documents you have. Over 200 Gb is not uncommon.</p>
<p>You should also have a working installation of the version you are migrating into, preferable with Demo data.</p>
<p>NOTE: This is NOT the procedure to use if you are merging the OSP installation into an existing production database. </p>
<p>The migration has the following steps:</p>
<ul>
<li>1) Contact your OSP and request an initial backup. This should be done in advance of your final migration to allow time for the OSP to make the backup and for you to test the process before the final transfer.</li>
<li>2) Install and setup the version you want to migrate into. Include the demo data. The Installation instructions can be found at <a href="https://oscargalaxy.org/knowledge-base/oscar-19-installation/">https://oscargalaxy.org/knowledge-base/oscar-19-installation/</a><br />Login and make sure it works.</li>
<li>3) Backup the database (oscar_15) including the Demo data and anything else you may have added.</li>
<li>4) Restore the backup into another database (eg. oscar_orig)</li>
<li>5) Decrypt and uncompress the backups you received from your OSP. This can take a long time.</li>
<li>6) Restore the OSP backup database over the existing oscar_15 database. </li>
<li>7) Move the documents into the right folder and check the permissions.</li>
<li>8) Compare the schemas of the restored OSP database (oscar_15) and the original database (oscar_orig). This is the most time-consuming step. There will be many small differences that have to be reconciled.</li>
</ul>
<p>As you update the database make backups!<br />
<strong>Every line that you enter on the server should be copied from a document that will be used to re-run the final transfer.</strong><br />
You can always revert back to a functioning installation by dropping the oscar_15 database and restoring oscar_orig into oscar_15 OR changing the database name in the oscar.properties file.</p>
<p>Other considerations:<br /> <br />
You cannot do billing from 2 installations at the same time.<br /> <br />
You need to setup and test backups, faxing and any other services previously done by your OSP. </p>
<p>TIPS:<br />
Run the conversion using the &#8216;screen&#8217; program. This will ensure that even if you get disconnected, your commands will continue running.</p>
<p>5) If the files are taken from the normal Oscar backups, they may be encrypted. You will need the database password to decrypt these files.</p>
<p>6) Restoring the OSP database may fail due to differences with the mySQL/mariadb configuration.<br />
Tip: The database backup file may be large but surprisingly easy to edit. I use nano -l <filename> to display with line numbers.<br />
charset differences: If the OSP still uses latin1, you will need to change CHARSET=latin1 to CHARSET=utf8mb3<br />
<code>sudo sed -i 's/CHARSET=latin1/CHARSET=utf8mb3/g' ~/database_backup.sql</code><br />
MyISAM vs InnoDB: Some of the older form tables are too big for the default InnoDB config. These are: formAdf, formIntakeHx, formONAR, formONAREnhancedRecord, formONAREnhancedRecordExt1, formONAREnhancedRecordExt2. You can just edit the .sql file changing the InnoDB to MyISAM and restart the restore.<br />
Many of these older form tables may have no data. An alternative workaround is to simply cut out the file creation lines and re-create the tables from the original backup you made in set 4). I did this for formONAREnhanced, formRourke2020. If these forms have data, this is a very bad idea!<br />
<code>sed -i 18,7269d ~/<filename>database_backup.sql</code> will remove all lines from 18 to 7269.</p>
<p>8) The following tables are critical. If you do not add the missing fields, Oscar will not start ;-(<br />
I took extra time to add the missing fields to oscar_15 in the same order as defined in oscar_orig. For reasons&#8230;<br />
The DROP columns is optional. Oscar will not crash if the table contains extra columns that exist in OscarPro. Probably a good idea, none the less.</p>
<p>I used the perl mysqldiff utility to list all differences between oscar_orig and oscar_15. <a href="https://metacpan.org/dist/MySQL-Diff/view/bin/mysqldiff">https://metacpan.org/dist/MySQL-Diff/view/bin/mysqldiff</a><br />
The command to run is<br />
<code>mysqldiff -o db:oscar_15 db:oscar_orig --user1=root --password1=dbpassword --user2=root --password2=dbpassword</code><br />
Adding missing fields to oscar_15 is critical because otherwise Tomcat will crash with &#8216;Database connection error: org.hibernate.exception.SQLGrammarException: could not execute query.&#8217; </p>
<p>You will need to read the tomcat log carefully to find the missing table.field using journalctl -u tomcat9.service &#8211;since &#8220;2025-09-11 11:01:00&#8243;.<br />
Hopefully, you will spot the Unknown column &#8216;security0_.lastUpdateDate&#8217; in &#8216;SELECT&#8217;</p>
<p>I converted them in the following order:<br />
security ADD passwordUpdateDate, pinUpdateDate, lastUpdateUser, lastUpdateDate, totp_enabled, totp_secret, totp_algorithm, totp_digits, totp_period<br />
If you don&#8217;t have the old login info, you will have to copy a valid password hash from oscar_orig.security.password.<br />
Note: The password encryption in OscarPro uses a longer and more secure key.</p>
<p>demographic ADD family_doctor, middleNames, residentialAddress, residentialCity, residentialProvince, residentialPostal, roster_enrolled_to, family_physician<br />
UPDATE oscar_15.demographic SET middlenames = &#8221; WHERE middlenames is NULL ;<br />
UPDATE oscar_15.demographic SET family_doctor = &#8220;<rdohip></rdohip><rd></rd>&#8221; WHERE family_doctor IS NULL ;<br />
UPDATE oscar_15.demographic SET family_doctor = &#8220;<rdohip></rdohip><rd></rd>&#8221; WHERE family_doctor = &#8221; ;</p>
<p>demographicArchive ADD family_doctor, roster_enrolled_to, middleNames, residentialAddress, residentialCity, residentialProvince, residentialPostal, pref_name, family_physician</p>
<p>messagelisttbl ADD destinationFacilityId, sourceFacilityId<br />
UPDATE oscar_15.messagelisttbl SET destinationFacilityId = 0 WHERE destinationFacilityId is NULL ;<br />
UPDATE oscar_15.messagelisttbl SET sourceFacilityId = 0 WHERE sourceFacilityId is NULL ;</p>
<p>At this point, you should be able to login and see the appointments &#038; demographic info.</p>
<p>allergies ADD nonDrug<br />
view ADD providerNo<br />
document ADD receivedDate<br />
drugs ADD short_term, protocol, priorRxProtocol, pharmacyId</p>
<p>Smallprint: This process was used to convert OscarPro(tm) to the Open Source .deb Installation as documented on oscargalaxy.org. Other Oscar forks may require a different process.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Firefox Secure Connection Failed message</title>
		<link>https://oscargalaxy.org/firefox-secure-connection-failed-message/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Mon, 21 Jul 2025 16:53:25 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<guid isPermaLink="false">https://oscargalaxy.org/?p=9729</guid>

					<description><![CDATA[There are periodic reports of error messages when trying to login to older Oscar version. Specifically SSL_ERROR_UNSUPPORTED_VERSION This is caused by the browser wanting to enforce a newer version of SSL that may not be supported by your Oscar server. There are 2 solutions: Upgrade the server or adjusting some browser settings. Adjusting browser settings: [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>There are periodic reports of error messages when trying to login to older Oscar version.<br />
Specifically SSL_ERROR_UNSUPPORTED_VERSION</p>
<p>This is caused by the browser wanting to enforce a newer version of SSL that may not be supported by your Oscar server.<br />
There are 2 solutions: Upgrade the server or adjusting some browser settings.</p>
<p>Adjusting browser settings:<br />
Enter about:config in the Firefox Address bar, then enter &#8216;security&#8217; in the search bar.</p>
<p>security.tls.version.enable-deprecated   true<br />
security.tls.version.min                 from 2 to 1</p>
<p>Note: This worked with Windows 10, Firefox ESR 128.12.0esr to Oscar v12</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Daily Log Report</title>
		<link>https://oscargalaxy.org/download/daily-log-report/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Mon, 02 Jun 2025 19:23:58 +0000</pubDate>
				<guid isPermaLink="false">https://oscargalaxy.org/?post_type=wpdmpro&#038;p=9575</guid>

					<description><![CDATA[Daily Log of start/end times by provider, DATE(datetime), IP]]></description>
										<content:encoded><![CDATA[<p>Daily Log of start/end times by provider, DATE(datetime), IP</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Consult Requests for Specialist</title>
		<link>https://oscargalaxy.org/download/consult-requests-for-specialist/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Mon, 02 Jun 2025 19:10:10 +0000</pubDate>
				<guid isPermaLink="false">https://oscargalaxy.org/?post_type=wpdmpro&#038;p=9574</guid>

					<description><![CDATA[List of Consult Requests for the selected Specialist]]></description>
										<content:encoded><![CDATA[<p>List of Consult Requests for the selected Specialist</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Logins by Expiry Date</title>
		<link>https://oscargalaxy.org/download/logins-by-expiry-date/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Mon, 26 May 2025 18:24:56 +0000</pubDate>
				<guid isPermaLink="false">https://oscargalaxy.org/?post_type=wpdmpro&#038;p=9560</guid>

					<description><![CDATA[Logins for Active Providers listed by Expiry Date. Avoid those &#8216;I cannot login&#8217; calls before they happen!]]></description>
										<content:encoded><![CDATA[<p>Logins for Active Providers listed by Expiry Date.<br />
Avoid those &#8216;I cannot login&#8217; calls before they happen!</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Log Details by IP, Provider</title>
		<link>https://oscargalaxy.org/download/log-details-by-ip-provider/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Mon, 26 May 2025 18:00:30 +0000</pubDate>
				<guid isPermaLink="false">https://oscargalaxy.org/?post_type=wpdmpro&#038;p=9559</guid>

					<description><![CDATA[Logged details for a specific IP, in order of Provider and Date Only document or lab record accesses will be listed Change WHERE l.ip like &#8216;{ip_addr}&#8217; to WHERE l.ip NOT like &#8216;{ip_addr}&#8217; to list external logins]]></description>
										<content:encoded><![CDATA[<p>Logged details for a specific IP, in order of Provider and Date<br />
Only document or lab record accesses will be listed</p>
<p>Change WHERE l.ip like &#8216;{ip_addr}&#8217; to WHERE l.ip <strong>NOT</strong> like &#8216;{ip_addr}&#8217; to list external logins</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Log Summary by Provider, Month, IP</title>
		<link>https://oscargalaxy.org/download/log-summary-by-provider-month-ip/</link>
		
		<dc:creator><![CDATA[Earl Wertheimer]]></dc:creator>
		<pubDate>Mon, 26 May 2025 17:27:19 +0000</pubDate>
				<guid isPermaLink="false">https://oscargalaxy.org/?post_type=wpdmpro&#038;p=9558</guid>

					<description><![CDATA[This RbT will list a summary of log records for each Provider, Month(YYYYMM) and IP address. It can be used to see who has accessed Oscar each month and their IP address.]]></description>
										<content:encoded><![CDATA[<p>This RbT will list a summary of log records for each Provider, Month(YYYYMM) and IP address.<br />
It can be used to see who has accessed Oscar each month and their IP address.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
