Re: [Dhis2-devs] DHIS2 OAuth Grant type authorized_code
Wow, LDAP is great. I think this is a revolution which brings DHIS2 to a truly integration platform. Will try that Thanh On Fri, Jan 8, 2016 at 1:10 PM, Morten Olav Hansen <morte...@gmail.com> wrote: > No, that is not possible. The only way to externally authenticate a DHIS 2 > instance is either using openid or using LDAP (now supported in 2.22). > > -- > Morten > > On Fri, Jan 8, 2016 at 1:08 PM, Ngoc Thanh Nguyen < > thanh.hispviet...@gmail.com> wrote: > >> Hi >> >> What I mean was if I have 3 dhis2 instances running on 3 server namely A, >> B, C. All user accounts (and passwords) are stored in C. >> >> When I access A or B, it will redirect to C for sign in. After signing in >> successfully, I can use A or B. >> >> Is that possible? >> >> Thanh >> >> >> On Fri, Jan 8, 2016 at 12:58 PM, Morten Olav Hansen <morte...@gmail.com> >> wrote: >> >>> Hi Thanh >>> >>> I'm not really sure what you want. DHIS 2 can only act as a >>> authentication provider, it does not support authentication against another >>> oauth2 provider. >>> >>> The main reason for adding oauth2 was to support third party clients >>> connecting with it without having to collect username/passwords in their >>> own local databases. >>> >>> -- >>> Morten >>> >>> On Tue, Dec 15, 2015 at 3:34 PM, Ngoc Thanh Nguyen < >>> thanh.hispviet...@gmail.com> wrote: >>> >>>> HI all >>>> >>>> Is there a way in DHIS2 that allows defining a callback for OAuth? If >>>> this possible, we can have multiple dhis2 instances that share a single >>>> user base. This will work like OAuth in Google+ or Facebook. >>>> >>>> Thanh >>>> >>> >>> >> > ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] DHIS2 OAuth Grant type authorized_code
Hi What I mean was if I have 3 dhis2 instances running on 3 server namely A, B, C. All user accounts (and passwords) are stored in C. When I access A or B, it will redirect to C for sign in. After signing in successfully, I can use A or B. Is that possible? Thanh On Fri, Jan 8, 2016 at 12:58 PM, Morten Olav Hansen <morte...@gmail.com> wrote: > Hi Thanh > > I'm not really sure what you want. DHIS 2 can only act as a authentication > provider, it does not support authentication against another oauth2 > provider. > > The main reason for adding oauth2 was to support third party clients > connecting with it without having to collect username/passwords in their > own local databases. > > -- > Morten > > On Tue, Dec 15, 2015 at 3:34 PM, Ngoc Thanh Nguyen < > thanh.hispviet...@gmail.com> wrote: > >> HI all >> >> Is there a way in DHIS2 that allows defining a callback for OAuth? If >> this possible, we can have multiple dhis2 instances that share a single >> user base. This will work like OAuth in Google+ or Facebook. >> >> Thanh >> > > ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] DHIS2 OAuth Grant type authorized_code
HI all Is there a way in DHIS2 that allows defining a callback for OAuth? If this possible, we can have multiple dhis2 instances that share a single user base. This will work like OAuth in Google+ or Facebook. Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] How many records can Organization Unit hold up?
Hi Muhamad, Try with a blank db. If it works, then check with few orgunit, if it still works, switch to this current db. If the problem occurs, make sure your orgunit table is valid. As far as I get you used a manual tool to automatically insert to this orgunit table Thanh On Thu, May 21, 2015 at 11:10 AM, Muhammad Tahir mtag...@gmail.com wrote: Hi Knut, Yes, DHIS Live is being used at the moment. JAVA_OPTS was not set no my machine but event I have added with value -Xms512M -Xmx1024M the problem remains the same(*HTTP ERROR: 404*). On Thu, May 21, 2015 at 12:19 AM, Knut Staring knu...@gmail.com wrote: Is that the whole log file? I see you are running this on your laptop as DHIS Live. Perhaps you could try allocating more memory to Java. What is your JAVA_OPTS? Knut On Wed, May 20, 2015 at 10:34 AM, Muhammad Tahir mtag...@gmail.com wrote: Hi Morten, Web page result: HTTP ERROR: 404 Problem accessing /. Reason: NOT_FOUND Powered by Jetty:// Log file: * INFO 15:31:27,201 Lifecycle: server stopped (TrayApp.java [AWT-EventQueue-0]) * INFO 15:31:27,223 Exiting... (TrayApp.java [AWT-EventQueue-0]) * INFO 15:32:11,490 Environment variable DHIS2_HOME: null (TrayApp.java [main]) * INFO 15:32:11,551 Initialising DHIS 2 Live... (TrayApp.java [main]) * INFO 15:32:11,623 Loading DHIS 2 on port: 8082 (WebAppServer.java [main]) * INFO 15:32:11,658 Setting DHIS 2 web app context to: /D:/DHIS2/Tools_Setup/dhis-live/webapps/dhis (WebAppServer.java [main]) * INFO 15:32:11,659 Lifecycle: server starting (TrayApp.java [Thread-2]) * INFO 15:32:14,931 System property dhis2.home points to /D:/DHIS2/Tools_Setup/dhis-live/conf (DefaultLocationManager.java [Thread-2]) * INFO 15:32:15,631 Hibernate configuration loaded, using dialect: org.hibernate.dialect.PostgreSQLDialect (DefaultHibernateConfigurationProvider.java [Thread-2]) * INFO 15:32:30,340 Found the following message senders: [org.hisp.dhis.message.EmailMessageSender@1ad234d, org.hisp.dhis.sms.SmsMessageSender@ee212a] (DefaultMessageService.java [Thread-2]) * INFO 15:32:39,016 Detected apps: [] (DefaultAppManager.java [Thread-2]) * INFO 15:32:44,155 Executing startup routine [1 of 14, runlevel 1]: InitTableAlteror (DefaultStartupRoutineExecutor.java [Thread-2]) * INFO 15:32:44,771 Executing startup routine [2 of 14, runlevel 2]: PeriodTypePopulator (DefaultStartupRoutineExecutor.java [Thread-2]) * INFO 15:32:44,859 Executing startup routine [3 of 14, runlevel 2]: DataElementDefaultDimensionPopulator (DefaultStartupRoutineExecutor.java [Thread-2]) * INFO 15:32:45,093 Linked default category with default concept (DataElementDefaultDimensionPopulator.java [Thread-2]) * INFO 15:32:45,170 Executing startup routine [4 of 14, runlevel 3]: TrackerIdentityPopulator (DefaultStartupRoutineExecutor.java [Thread-2]) * INFO 15:33:18,812 Lifecycle: server started (TrayApp.java [Thread-2]) On Fri, May 15, 2015 at 3:03 PM, Morten Olav Hansen morte...@gmail.com wrote: Can you be a bit more specific? where does it crash? is it a browser issue? server issue? can you send us the relevant parts of the logs? (if any) If its the browser, can you open the developer tools (f12) and look in the javascript console and see if there is anything in red -- Morten On Fri, May 15, 2015 at 4:39 PM, Muhammad Tahir mtag...@gmail.com wrote: Hi, We have an organization level distribution as follows with number of org units at each level. App crashes when the last level is uploaded into the system and we try to browse the organization units. A new DB should be then used to use the app. *Level1* *-- 1* *Level2** -- **6* *Level3* *-- 9* *Level4* * -- * *16* *Level5** -- 130* *Level6** -- 550* * Level7** -- 900* * Level8** -- 2* * Level9** -- 80,000* * Level10 **-- 100,000* At present the app is deployed on a desktop machine with following configuration. Windows7, 4 Gb RAM, Intel Corei3 3.3 GHz. -- *Regards,* *Muhammad Tahir* ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- *Regards,* *Muhammad Tahir* ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Knut Staring Dept. of Informatics, University of Oslo Norway: +4791880522 Skype: knutstar http://dhis2.org -- *Regards,* *Muhammad Tahir* ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help :
Re: [Dhis2-devs] How many records can Organization Unit hold up?
Knut and Muhammad, I am quite sure that level is not the problem. Obviously, when moving from level 9 to 10, the number of orgunits surges from 80 to 100,000 which is more than 10 times. The number of orgunit matters here. I expected heap memory problem here but the log did not say so. Muhammad, could you try with level 10 but with little number of orgunit? On Thu, May 21, 2015 at 5:40 PM, Knut Staring knu...@gmail.com wrote: I suppose it is not a very helpful comment, but I would seriously consider skipping some of those levels, if possible..though we should certainly still aim to understand what is causing your problem. On Thu, May 21, 2015 at 11:37 AM, Muhammad Tahir mtag...@gmail.com wrote: Hi Ngoc, Yes, I have loaded the table manually, but it works fine upto level 9, as soon as the final level 10 orgunits are added, the app does start but on browser I get 404 message. I have created another DB, loaded each level step by step and the app works until level10 units are added. At present I have deployed only upto level 6 to check/configure other options of DHIS2. *Level1* *-- 1* *Level2** -- **6* *Level3* *-- 9* *Level4* * -- * *16* *Level5** -- 130* *Level6** -- 550* * Level7** -- 900* * Level8** -- 2* * Level9** -- 80,000* * Level10 **-- 100,000* On Thu, May 21, 2015 at 12:46 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi Muhamad, Try with a blank db. If it works, then check with few orgunit, if it still works, switch to this current db. If the problem occurs, make sure your orgunit table is valid. As far as I get you used a manual tool to automatically insert to this orgunit table Thanh On Thu, May 21, 2015 at 11:10 AM, Muhammad Tahir mtag...@gmail.com wrote: Hi Knut, Yes, DHIS Live is being used at the moment. JAVA_OPTS was not set no my machine but event I have added with value -Xms512M -Xmx1024M the problem remains the same(*HTTP ERROR: 404*). On Thu, May 21, 2015 at 12:19 AM, Knut Staring knu...@gmail.com wrote: Is that the whole log file? I see you are running this on your laptop as DHIS Live. Perhaps you could try allocating more memory to Java. What is your JAVA_OPTS? Knut On Wed, May 20, 2015 at 10:34 AM, Muhammad Tahir mtag...@gmail.com wrote: Hi Morten, Web page result: HTTP ERROR: 404 Problem accessing /. Reason: NOT_FOUND Powered by Jetty:// Log file: * INFO 15:31:27,201 Lifecycle: server stopped (TrayApp.java [AWT-EventQueue-0]) * INFO 15:31:27,223 Exiting... (TrayApp.java [AWT-EventQueue-0]) * INFO 15:32:11,490 Environment variable DHIS2_HOME: null (TrayApp.java [main]) * INFO 15:32:11,551 Initialising DHIS 2 Live... (TrayApp.java [main]) * INFO 15:32:11,623 Loading DHIS 2 on port: 8082 (WebAppServer.java [main]) * INFO 15:32:11,658 Setting DHIS 2 web app context to: /D:/DHIS2/Tools_Setup/dhis-live/webapps/dhis (WebAppServer.java [main]) * INFO 15:32:11,659 Lifecycle: server starting (TrayApp.java [Thread-2]) * INFO 15:32:14,931 System property dhis2.home points to /D:/DHIS2/Tools_Setup/dhis-live/conf (DefaultLocationManager.java [Thread-2]) * INFO 15:32:15,631 Hibernate configuration loaded, using dialect: org.hibernate.dialect.PostgreSQLDialect (DefaultHibernateConfigurationProvider.java [Thread-2]) * INFO 15:32:30,340 Found the following message senders: [org.hisp.dhis.message.EmailMessageSender@1ad234d, org.hisp.dhis.sms.SmsMessageSender@ee212a] (DefaultMessageService.java [Thread-2]) * INFO 15:32:39,016 Detected apps: [] (DefaultAppManager.java [Thread-2]) * INFO 15:32:44,155 Executing startup routine [1 of 14, runlevel 1]: InitTableAlteror (DefaultStartupRoutineExecutor.java [Thread-2]) * INFO 15:32:44,771 Executing startup routine [2 of 14, runlevel 2]: PeriodTypePopulator (DefaultStartupRoutineExecutor.java [Thread-2]) * INFO 15:32:44,859 Executing startup routine [3 of 14, runlevel 2]: DataElementDefaultDimensionPopulator (DefaultStartupRoutineExecutor.java [Thread-2]) * INFO 15:32:45,093 Linked default category with default concept (DataElementDefaultDimensionPopulator.java [Thread-2]) * INFO 15:32:45,170 Executing startup routine [4 of 14, runlevel 3]: TrackerIdentityPopulator (DefaultStartupRoutineExecutor.java [Thread-2]) * INFO 15:33:18,812 Lifecycle: server started (TrayApp.java [Thread-2]) On Fri, May 15, 2015 at 3:03 PM, Morten Olav Hansen morte...@gmail.com wrote: Can you be a bit more specific? where does it crash? is it a browser issue? server issue? can you send us the relevant parts of the logs? (if any) If its the browser, can you open the developer tools (f12) and look in the javascript console and see if there is anything in red -- Morten On Fri, May 15, 2015 at 4:39 PM, Muhammad Tahir mtag...@gmail.com wrote: Hi, We have an organization level distribution as follows with number of org units at each level. App crashes
Re: [Dhis2-devs] Bug on OpenID dhis2
I have solved this problem. I think the problem is related to excluding XeresImp jar. There was a thread about this but no one confirm anything so it was completely excluded. Note that the demo server also has this problem so my suggestion is either include this jar again or should have a very strong notice on the deployment of OpenID https://www.mail-archive.com/search?l=dhis2-devs@lists.launchpad.netq=subject:%22Re%3A+%5BDhis2-devs%5D+%5BBug+1320212%5D+%5BNEW%5D+Warning+possibly+relate+to+xerces+library+while+migrating+to+dhis+2.14+to+2.15%22o=newestf=1 Thanh On Fri, Apr 17, 2015 at 6:40 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Sorry it is 2.18 This is full log of the server About DHIS 2Web API:Browse it here http://nova.hny.vn:8080/dhis/apiCurrent user:adminVersion:2.18Build revision:18202Build date:2015-02-25 23:19User agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36Server date:2015-04-16 13:13Environment variable:DHIS2_HOMEExternal configuration directory:/opt/DHIS2_HOMEDatabase type:PostgreSQLDatabase name:dhis2Database user:dhis2Java opts:Java home: /opt/jdk1.7.0/jreJava temporary directory:/opt/tomcat7/tempJava version: 1.7.0Java vendor:Oracle CorporationOS name:LinuxOS architecture:amd64OS version:2.6.32-431.1.2.0.1.el6.x86_64Server memory:Mem Total in JVM: 617 Free in JVM: 97 Max Limit: 888CPU cores:2 2015-04-17 6:39 GMT+07:00 Ngoc Thanh Nguyen thanh.hispviet...@gmail.com: I think it is 2.17 On Wed, Apr 15, 2015 at 9:19 AM, Morten Olav Hansen morte...@gmail.com wrote: Which version of dhis2? -- Morten 2015-04-15 8:21 GMT+07:00 Ngoc Thanh Nguyen thanh.hispviet...@gmail.com : After signing in successfully Etat HTTP 500 - Filter execution threw an exception -- *type* Rapport d''exception *message* *Filter execution threw an exception* *description* *Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête.* *exception* javax.servlet.ServletException: Filter execution threw an exception org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:150) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) *cause mère* java.lang.NoClassDefFoundError: org/openid4java/util/OpenID4JavaDOMParser org.openid4java.discovery.yadis.CyberNekoDOMYadisHtmlParser.parseDocument(CyberNekoDOMYadisHtmlParser.java:96) org.openid4java.discovery.yadis.CyberNekoDOMYadisHtmlParser.getHtmlMeta(CyberNekoDOMYadisHtmlParser.java:39) org.openid4java.discovery.yadis.YadisResolver.getHtmlMeta(YadisResolver.java:325) org.openid4java.discovery.yadis.YadisResolver.retrieveXrdsLocation(YadisResolver.java:453) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:252) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:232) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:166) org.openid4java.discovery.Discovery.discover(Discovery.java:147) org.openid4java.consumer.ConsumerManager.verifyDiscovered2(ConsumerManager.java:1693) org.openid4java.consumer.ConsumerManager.verifyDiscovered(ConsumerManager.java:1521) org.openid4java.consumer.ConsumerManager.verify(ConsumerManager.java:1156) org.springframework.security.openid.OpenID4JavaConsumer.endConsumption(OpenID4JavaConsumer.java:169) org.springframework.security.openid.OpenIDAuthenticationFilter.attemptAuthentication(OpenIDAuthenticationFilter.java:145) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:211) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.hisp.dhis.security.filter.CustomAuthenticationFilter.doFilter(CustomAuthenticationFilter.java:64) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:115) org.springframework.security.web.FilterChainProxy
Re: [Dhis2-devs] Bug on OpenID dhis2
Sorry it is 2.18 This is full log of the server About DHIS 2Web API:Browse it here http://nova.hny.vn:8080/dhis/apiCurrent user:adminVersion:2.18Build revision:18202Build date:2015-02-25 23:19User agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36Server date:2015-04-16 13:13Environment variable:DHIS2_HOMEExternal configuration directory:/opt/DHIS2_HOMEDatabase type:PostgreSQLDatabase name:dhis2Database user:dhis2Java opts:Java home: /opt/jdk1.7.0/jreJava temporary directory:/opt/tomcat7/tempJava version: 1.7.0Java vendor:Oracle CorporationOS name:LinuxOS architecture:amd64OS version:2.6.32-431.1.2.0.1.el6.x86_64Server memory:Mem Total in JVM: 617 Free in JVM: 97 Max Limit: 888CPU cores:2 2015-04-17 6:39 GMT+07:00 Ngoc Thanh Nguyen thanh.hispviet...@gmail.com: I think it is 2.17 On Wed, Apr 15, 2015 at 9:19 AM, Morten Olav Hansen morte...@gmail.com wrote: Which version of dhis2? -- Morten 2015-04-15 8:21 GMT+07:00 Ngoc Thanh Nguyen thanh.hispviet...@gmail.com : After signing in successfully Etat HTTP 500 - Filter execution threw an exception -- *type* Rapport d''exception *message* *Filter execution threw an exception* *description* *Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête.* *exception* javax.servlet.ServletException: Filter execution threw an exception org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:150) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) *cause mère* java.lang.NoClassDefFoundError: org/openid4java/util/OpenID4JavaDOMParser org.openid4java.discovery.yadis.CyberNekoDOMYadisHtmlParser.parseDocument(CyberNekoDOMYadisHtmlParser.java:96) org.openid4java.discovery.yadis.CyberNekoDOMYadisHtmlParser.getHtmlMeta(CyberNekoDOMYadisHtmlParser.java:39) org.openid4java.discovery.yadis.YadisResolver.getHtmlMeta(YadisResolver.java:325) org.openid4java.discovery.yadis.YadisResolver.retrieveXrdsLocation(YadisResolver.java:453) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:252) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:232) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:166) org.openid4java.discovery.Discovery.discover(Discovery.java:147) org.openid4java.consumer.ConsumerManager.verifyDiscovered2(ConsumerManager.java:1693) org.openid4java.consumer.ConsumerManager.verifyDiscovered(ConsumerManager.java:1521) org.openid4java.consumer.ConsumerManager.verify(ConsumerManager.java:1156) org.springframework.security.openid.OpenID4JavaConsumer.endConsumption(OpenID4JavaConsumer.java:169) org.springframework.security.openid.OpenIDAuthenticationFilter.attemptAuthentication(OpenIDAuthenticationFilter.java:145) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:211) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.hisp.dhis.security.filter.CustomAuthenticationFilter.doFilter(CustomAuthenticationFilter.java:64) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:115) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:57) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107
Re: [Dhis2-devs] Bug on OpenID dhis2
I think it is 2.17 On Wed, Apr 15, 2015 at 9:19 AM, Morten Olav Hansen morte...@gmail.com wrote: Which version of dhis2? -- Morten 2015-04-15 8:21 GMT+07:00 Ngoc Thanh Nguyen thanh.hispviet...@gmail.com: After signing in successfully Etat HTTP 500 - Filter execution threw an exception -- *type* Rapport d''exception *message* *Filter execution threw an exception* *description* *Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête.* *exception* javax.servlet.ServletException: Filter execution threw an exception org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:150) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) *cause mère* java.lang.NoClassDefFoundError: org/openid4java/util/OpenID4JavaDOMParser org.openid4java.discovery.yadis.CyberNekoDOMYadisHtmlParser.parseDocument(CyberNekoDOMYadisHtmlParser.java:96) org.openid4java.discovery.yadis.CyberNekoDOMYadisHtmlParser.getHtmlMeta(CyberNekoDOMYadisHtmlParser.java:39) org.openid4java.discovery.yadis.YadisResolver.getHtmlMeta(YadisResolver.java:325) org.openid4java.discovery.yadis.YadisResolver.retrieveXrdsLocation(YadisResolver.java:453) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:252) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:232) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:166) org.openid4java.discovery.Discovery.discover(Discovery.java:147) org.openid4java.consumer.ConsumerManager.verifyDiscovered2(ConsumerManager.java:1693) org.openid4java.consumer.ConsumerManager.verifyDiscovered(ConsumerManager.java:1521) org.openid4java.consumer.ConsumerManager.verify(ConsumerManager.java:1156) org.springframework.security.openid.OpenID4JavaConsumer.endConsumption(OpenID4JavaConsumer.java:169) org.springframework.security.openid.OpenIDAuthenticationFilter.attemptAuthentication(OpenIDAuthenticationFilter.java:145) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:211) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.hisp.dhis.security.filter.CustomAuthenticationFilter.doFilter(CustomAuthenticationFilter.java:64) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:115) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:57) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192) org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) org.springframework.orm.hibernate4
[Dhis2-devs] Bug on OpenID dhis2
After signing in successfully Etat HTTP 500 - Filter execution threw an exception -- *type* Rapport d''exception *message* *Filter execution threw an exception* *description* *Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête.* *exception* javax.servlet.ServletException: Filter execution threw an exception org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:150) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) *cause mère* java.lang.NoClassDefFoundError: org/openid4java/util/OpenID4JavaDOMParser org.openid4java.discovery.yadis.CyberNekoDOMYadisHtmlParser.parseDocument(CyberNekoDOMYadisHtmlParser.java:96) org.openid4java.discovery.yadis.CyberNekoDOMYadisHtmlParser.getHtmlMeta(CyberNekoDOMYadisHtmlParser.java:39) org.openid4java.discovery.yadis.YadisResolver.getHtmlMeta(YadisResolver.java:325) org.openid4java.discovery.yadis.YadisResolver.retrieveXrdsLocation(YadisResolver.java:453) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:252) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:232) org.openid4java.discovery.yadis.YadisResolver.discover(YadisResolver.java:166) org.openid4java.discovery.Discovery.discover(Discovery.java:147) org.openid4java.consumer.ConsumerManager.verifyDiscovered2(ConsumerManager.java:1693) org.openid4java.consumer.ConsumerManager.verifyDiscovered(ConsumerManager.java:1521) org.openid4java.consumer.ConsumerManager.verify(ConsumerManager.java:1156) org.springframework.security.openid.OpenID4JavaConsumer.endConsumption(OpenID4JavaConsumer.java:169) org.springframework.security.openid.OpenIDAuthenticationFilter.attemptAuthentication(OpenIDAuthenticationFilter.java:145) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:211) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.hisp.dhis.security.filter.CustomAuthenticationFilter.doFilter(CustomAuthenticationFilter.java:64) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:115) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:57) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192) org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344) org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261) org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:150) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
Re: [Dhis2-devs] Morbidity and mortality program in demo dhis2 site
Thanks Abyot. After 1 day working with HISP Vietnam team I am get full of control the Tracker. It is technically fine now, however, I shift my interest to knowing how people actually use the system, approaches and best practices. Thanh On Mon, Mar 16, 2015 at 4:29 PM, Abyot Gizaw aby...@gmail.com wrote: Hi Thanh, Yes the tracker capture is suited for such kinds of use cases. We could help you a lot if you are a bit specific on your needs. --- Thank you, Abyot. On Sun, Mar 15, 2015 at 7:29 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi all, I would like to buid a system for Morbidity and mortality in Vietnam. I think the one deployed on the demo site is similar to what we plan to have though it may go a bit further, i.e. multiple events with registration (tracking a patient throughout their admission history) rather than single event without registration. Could anyone who were involved in this implementation share some lessons? Thanks Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Morbidity and mortality program in demo dhis2 site
Hi all, I would like to buid a system for Morbidity and mortality in Vietnam. I think the one deployed on the demo site is similar to what we plan to have though it may go a bit further, i.e. multiple events with registration (tracking a patient throughout their admission history) rather than single event without registration. Could anyone who were involved in this implementation share some lessons? Thanks Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Urgent feedback required
Hi Calle I voted for Jason's suggestion. In Vietnam, in many cases we use this approach. Hacking dhis2 by using days as categories will be problematic in the long run although such problems may not be visible now. Once time in the past someone told us to use departments of hospitals as categories (instead of orgunit). We followed this and this went bankcrupt shortly. Thanh On Fri, Jan 30, 2015 at 9:52 PM, Jason Pickering jason.p.picker...@gmail.com wrote: Why not just make the dataset daily and transform all monthly data such that it occurs on the last day of the month? On Fri, Jan 30, 2015 at 2:11 PM, Calle Hedberg calle.hedb...@gmail.com wrote: Hi, I need some urgent feedback on one very specific issue: 1. We have a lot of monthly data that have been captured on a daily basis (up to now in 1.4). The data is in reality monthly aggregated data because it is the monthly totals that are used for indicators, analysis, reports etc - but the data is captured daily into DHIS to enable consistency/completeness tracking and to cut down on the erroneous manual data compilation from paper forms at the end of every month. 2. Initially, the HISP team converted these daily captured values in 1.4 into datavalues in DHIS2 with dataperiodtype = daily. This approach has various shortcomings, in particular when the use of daily capturing is slowly being rolled out - meaning that while let us say 30% of all facilities captured data on a daily basis themselves, the remaining 70% are still submitting monthly summary forms to the sub-district office for capturing as monthly total data. 3. I believe a more logical approach is to store the daily data (Day01, Day02, , Day31) as categories - as mentioned, we are in general NOT using those daily values for anything beyond the initial data quality and completeness process. QUESTION: 1. Are there any major drawbacks to storing these daily values as categories? 2. Are there any major limitations with regard to the design of data entry forms that will make it difficult to have a matrix type data entry form where (a) the user select OrgUnit, DataSet, and the DATE (as in 2015-01-30) (b) the year/month part of that date determines the dataperiodid (c) the day portion of the date determines which category will be the right-most column in the data entry matrix (d) we can display let us say 7 preceding days in the matrix to assist the data capturer with eyeballing data during capture (dynamic selection display of categories). So the entry form would show up as DataElement Day23 Day24 Day25 Day26 Day27 Day28 Day29 Day30 data element1 17 14 15 22 18 19 20 entry data element2 13 11 19 8 15 12 10 entry Any quick feedback would be appreciated Regards Calle *** Calle Hedberg 46D Alma Road, 7700 Rosebank, SOUTH AFRICA Tel/fax (home): +27-21-685-6472 Cell: +27-82-853-5352 Iridium SatPhone: +8816-315-19274 Email: calle.hedb...@gmail.com Skype: calle_hedberg *** ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Jason P. Pickering email: jason.p.picker...@gmail.com tel:+46764147049 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Confusing Use license on dhis2 website
Thanks Bob and Calle for the great info and interpretation. @Calle you know so well about Foss though you were many years with MS Thanh On Nov 2, 2014 4:08 AM, Calle Hedberg calle.hedb...@gmail.com wrote: Hi, We've always used the so called Lesser GPL license for 1.x version of the DHIS - this also allows any type of derivate software (including commercial ones) AS LONG AS THE ORIGINAL SOFTWARE REMAIN FOSS AND THE ORIGINAL SOFTWARE IS PACKAGED WITH THE LICENSE. So the reference to cannot be used for commercial purposes refers to the original software, not significant derivatives. We've never had a problem with any commercial entity trying to hi-jack the software, though, and I think it is a very unlikely scenario - and even less likely with DHIS2 because by now every potential customer/user knows it's FOSS. What IS possible at some stage is that a commercial software company would develop some sophisticated add-on package and sell that - we've seen a number of those with e.g. PostgreSQL, for instance. And we don't have a problem with that. Regards Calle On 1 November 2014 18:41, Bob Jolliffe bobjolli...@gmail.com wrote: Agree this is a bit confusing. I am assuming you read this here: http://hisp.org/html/policies.htm#terms This is actually the HISP South Africa web site and it looks like these are conditions which they are applying to the dhis 1.4 software. Given that they now also support v2 they should really update this. I think it reflects some previous reality. It has no effect on the dhis2 software which you download from dhis2.org. On 1 November 2014 16:22, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi all DHIS2 is licensed as BSD which means that one can customize, redistribute, and use it for any purposes (commercial or non-commercial) given that the BSD copyright text are retained. However, in HISP website it says that materials (include software) on the website can not be used for commercial or non-commercial purpose. Is it a conflict? 2. Use License a. Permission is granted to temporarily download one copy of the materials (information or software) on HISP's web site for personal, non-commercial transitory viewing only. This is the grant of a license, not a transfer of title, and under this license you may not: - modify or copy the materials; - use the materials for any commercial purpose, or for any public display (commercial or non-commercial); - attempt to decompile or reverse engineer any software contained on HISP's web site; - remove any copyright or other proprietary notations from the materials; or - transfer the materials to another person or mirror the materials on any other server. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- *** Calle Hedberg 46D Alma Road, 7700 Rosebank, SOUTH AFRICA Tel/fax (home): +27-21-685-6472 Cell: +27-82-853-5352 Iridium SatPhone: +8816-315-19274 Email: calle.hedb...@gmail.com Skype: calle_hedberg *** ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Confusing Use license on dhis2 website
Hi all DHIS2 is licensed as BSD which means that one can customize, redistribute, and use it for any purposes (commercial or non-commercial) given that the BSD copyright text are retained. However, in HISP website it says that materials (include software) on the website can not be used for commercial or non-commercial purpose. Is it a conflict? 2. Use License a. Permission is granted to temporarily download one copy of the materials (information or software) on HISP's web site for personal, non-commercial transitory viewing only. This is the grant of a license, not a transfer of title, and under this license you may not: - modify or copy the materials; - use the materials for any commercial purpose, or for any public display (commercial or non-commercial); - attempt to decompile or reverse engineer any software contained on HISP's web site; - remove any copyright or other proprietary notations from the materials; or - transfer the materials to another person or mirror the materials on any other server. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Last 12 months -- no values but last 3 months -- have values
Is this a bug? [image: Inline image 1] [image: Inline image 2] ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Dhis2-users] dhis 2.16 upgrade notes
Hi DHIS2 is not exhaustively tested in mysql so don't be discouraged. I often see this error. Try the following: - mvn clean - check your hibernate configuration file - try with a fresh new db to see if that error occurs Thanh On Thu, Sep 11, 2014 at 8:55 AM, sumudu weerasinghe sumudu...@gmail.com wrote: Hi Lars and all, I used dhis 2.15 for our mental health information system, which contain both tracker and aggregate parts. I try to upgrade my instance to 2.16 from 2.15. Above mention things has been automatically happened , but there is a error 1. 2.16 war file deployed on 2.15 database 2. then data entry form unable to load 3. give memory problem Can anyone advise regarding upgrading in to 2.16 ? Detail of log file and screen shot attach here. I am using *Version: 2.16**Build revision:16410**Database type:MySQL* *Java version:1.7.0_04**OS name:Windows 7* Regards Sumudu On Tue, Aug 5, 2014 at 12:33 AM, Lars Helge Øverland larshe...@gmail.com wrote: Hi, a note on how to upgrade to dhis version 2.16: The following changes *require* *action* on the implementer's side. - From data administration scheduling, scheduling should be deactivated, set according to your needs and finally activated. - A property encryption.password should be added to hibernate.properties file if you plan to use the data synchronization feature, see the docs https://www.dhis2.org/doc/snapshot/en/implementer/html/ch08s02.html#d5e505 . The following database changes require *no action* and will happen automatically when running the new WAR file the first time. - Column completed of table programstageinstance has been removed and is replaced by the existing status column. - The values in column domaintype of table dataelement have been migrated from aggregate to AGGREGATE and from patient to TRACKER. - A column lastupdated will be added to table datavalue, this might take some time when starting up the system for the first time. This information can also be found here: https://www.dhis2.org/2.16-upgrade We encourage people to upgrade their instances, test the new features and provide feedback. best regards, Lars ___ Mailing list: https://launchpad.net/~dhis2-users Post to : dhis2-us...@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-users More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] java.sql.SQLException: Field 'periodid' doesn't have a default value
Currently I use MySQL 5, Tomcat 7 on Linux. dhis2 version 2.16 Have any one encountered this issues? Here is the trace: equestFilter.java:106) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(Servlet Handler.java:1212) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:3 99) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.jav a:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:1 82) at org.mortbay.jetty.handler.ContextHandler.__handle(ContextHandler.java :766) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHand lerCollection.java:230) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection. java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:1 52) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:54 2) at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnectio n.java:945) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.ja va:410) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.j ava:582) Caused by: java.sql.SQLException: Field 'periodid' doesn't have a default value at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4237) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4169) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2617) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2778) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2825) at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.ja va:2156) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java :2459) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java :2376) at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java :2360) at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewP roxyPreparedStatement.java:105) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate( ResultSetReturnImpl.java:133) ... 152 more * INFO 2014-09-07 23:15:05,238 'admin' create org.hisp.dhis.period.Period, name : 20141216, uid: 20141216 (AuditLogUtil.java [2062952956@qtp-224922962-27]) * WARN 2014-09-07 23:15:05,243 SQL Error: 1364, SQLState: HY000 (SqlExceptionHe lper.java [2062952956@qtp-224922962-27]) * ERROR 2014-09-07 23:15:05,244 Field 'periodid' doesn't have a default value (S qlExceptionHelper.java [2062952956@qtp-224922962-27]) 2014-09-07 23:15:05.245:WARN::/api/dataValues org.hibernate.exception.GenericJDBCException: could not execute statement at org.hibernate.exception.internal.StandardSQLExceptionConverter.conver t(StandardSQLExceptionConverter.java:54) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlException Helper.java:125) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlException Helper.java:110) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate( ResultSetReturnImpl.java:136) at org.hibernate.id.IdentityGenerator$GetGeneratedKeysDelegate.executeAn dExtract(IdentityGenerator.java:96) at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(Abstr actReturningDelegate.java:58) at org.hibernate.persister.entity.AbstractEntityPersister.insert(Abstrac tEntityPersister.java:2966) at org.hibernate.persister.entity.AbstractEntityPersister.insert(Abstrac tEntityPersister.java:3477) at org.hibernate.action.internal.EntityIdentityInsertAction.execute(Enti tyIdentityInsertAction.java:81) at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:362) at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(Ac tionQueue.java:203) at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java :183) at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:167) at org.hibernate.event.internal.AbstractSaveEventListener.addInsertActio n(AbstractSaveEventListener.java:321) at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrR eplicate(AbstractSaveEventListener.java:286) at org.hibernate.event.internal.AbstractSaveEventListener.performSave(Ab
[Dhis2-devs] Help: dhis2 dataentry form shows only year 2013 periods
Hi all, After upgrading to 2.16, our data entry form shows only year 2013 periods When clicking next year button, there is no period in the list. How do we fix this? [image: Inline image 1] ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Auto-calculated data in entry forms
great. surprised that a medical doctor can write that code. if you turn it to jquery it is much easier. anyway, its fine for now On Sep 2, 2014 11:54 AM, Pamod Amarakoon pam...@gmail.com wrote: Hi, Thanks a lot. In fact I'm a medical doctor and have limited knowledhe in Javascript. I managed to get it done with following javascript I created. height enterd in cm and weight in kg. script type=text/javascript function updateBMI() { var ht = document.getElementById(HeightID-val).value; var wt = document.getElementById(WeightID-val).value; if(ht!= wt!=){ var bmi = wt/(ht*ht/1); bmi = +bmi.toFixed(2); }else{ var bmi =Enter Height and Weight; } var inputbmi= document.getElementById(BMI-ID-val); inputbmi.value = bmi; } updateBMI(); /script It serves the purpose it seems. Pls suggest any modifications On Mon, Sep 1, 2014 at 11:52 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: yes you can use custom data entry form and add some js script like onchange event on weight and height. the event handler should then calculate the bmi and update the text field bmi. do you have any technical person to do this? if not give me your account i can help On Sep 2, 2014 12:26 AM, Pamod Amarakoon pam...@gmail.com wrote: I'd like to add something to this. For example, if we have a data entry form (BMI) for a program stage if we have height and weight input boxes/data elements is there a way to calculate BMI? is it only possible by using javascript/webapp On Mon, Sep 1, 2014 at 10:21 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi I believe the calculated data value (now as indicator) can only be seen after an aggregation is run. In addition, in some forms in some countries like VN, auto-calculated data elements some time can be input by users. In VN, we use Javascript to achieve this. However, it is quite complicated. Imagine that you have to rebuild a spreadsheet engine. Important lesson learnt was if a dataelement is auto-calculated, make sure no one can change it manually. Otherwise, you end up with very low data quality. Thanh On Mon, Sep 1, 2014 at 11:15 PM, Jason Pickering jason.p.picker...@gmail.com wrote: Hi Robin, You can simply use an indicator to do this. In case you have not seen it, we have extensive documentation on the use of indicators here https://www.dhis2.org/doc/snapshot/en/user/html/ch13.html#indicator_maintenance It should also be possible to calculate the value from other data, not contained in the data entry form, IF it exists for the same orgunit and period. Best regards, Jason On Mon, Sep 1, 2014 at 5:48 PM, Robin Martens mart...@sher.be wrote: Dear all, Does anyone know if there's a way to have auto-calculated fields in data entry forms? This auto-calculated field would then be available for further reporting and indicator calculation (i.e. it is a data element calculated based on other data elements in the same entry form). Actually, if it would be possible to calculate data elements based on other data elements outside of a data form, that would be great too (but if I remember well this is currently not possible). Thanks for any ideas, Robin ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Pamod -- Pamod ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Auto-calculated data in entry forms
Hi it is already inside dhis2 (for every dhis2 page). no need for external import Thanh On Tue, Sep 2, 2014 at 2:17 PM, Pamod Amarakoon pam...@gmail.com wrote: Hi, Thanx. Is jquery available inside data entry form on the fly or has to link it separately to outside library. On Tue, Sep 2, 2014 at 12:31 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: great. surprised that a medical doctor can write that code. if you turn it to jquery it is much easier. anyway, its fine for now On Sep 2, 2014 11:54 AM, Pamod Amarakoon pam...@gmail.com wrote: Hi, Thanks a lot. In fact I'm a medical doctor and have limited knowledhe in Javascript. I managed to get it done with following javascript I created. height enterd in cm and weight in kg. script type=text/javascript function updateBMI() { var ht = document.getElementById(HeightID-val).value; var wt = document.getElementById(WeightID-val).value; if(ht!= wt!=){ var bmi = wt/(ht*ht/1); bmi = +bmi.toFixed(2); }else{ var bmi =Enter Height and Weight; } var inputbmi= document.getElementById(BMI-ID-val); inputbmi.value = bmi; } updateBMI(); /script It serves the purpose it seems. Pls suggest any modifications On Mon, Sep 1, 2014 at 11:52 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: yes you can use custom data entry form and add some js script like onchange event on weight and height. the event handler should then calculate the bmi and update the text field bmi. do you have any technical person to do this? if not give me your account i can help On Sep 2, 2014 12:26 AM, Pamod Amarakoon pam...@gmail.com wrote: I'd like to add something to this. For example, if we have a data entry form (BMI) for a program stage if we have height and weight input boxes/data elements is there a way to calculate BMI? is it only possible by using javascript/webapp On Mon, Sep 1, 2014 at 10:21 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi I believe the calculated data value (now as indicator) can only be seen after an aggregation is run. In addition, in some forms in some countries like VN, auto-calculated data elements some time can be input by users. In VN, we use Javascript to achieve this. However, it is quite complicated. Imagine that you have to rebuild a spreadsheet engine. Important lesson learnt was if a dataelement is auto-calculated, make sure no one can change it manually. Otherwise, you end up with very low data quality. Thanh On Mon, Sep 1, 2014 at 11:15 PM, Jason Pickering jason.p.picker...@gmail.com wrote: Hi Robin, You can simply use an indicator to do this. In case you have not seen it, we have extensive documentation on the use of indicators here https://www.dhis2.org/doc/snapshot/en/user/html/ch13.html#indicator_maintenance It should also be possible to calculate the value from other data, not contained in the data entry form, IF it exists for the same orgunit and period. Best regards, Jason On Mon, Sep 1, 2014 at 5:48 PM, Robin Martens mart...@sher.be wrote: Dear all, Does anyone know if there's a way to have auto-calculated fields in data entry forms? This auto-calculated field would then be available for further reporting and indicator calculation (i.e. it is a data element calculated based on other data elements in the same entry form). Actually, if it would be possible to calculate data elements based on other data elements outside of a data form, that would be great too (but if I remember well this is currently not possible). Thanks for any ideas, Robin ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Pamod -- Pamod -- Pamod ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Auto-calculated data in entry forms
Hi I believe the calculated data value (now as indicator) can only be seen after an aggregation is run. In addition, in some forms in some countries like VN, auto-calculated data elements some time can be input by users. In VN, we use Javascript to achieve this. However, it is quite complicated. Imagine that you have to rebuild a spreadsheet engine. Important lesson learnt was if a dataelement is auto-calculated, make sure no one can change it manually. Otherwise, you end up with very low data quality. Thanh On Mon, Sep 1, 2014 at 11:15 PM, Jason Pickering jason.p.picker...@gmail.com wrote: Hi Robin, You can simply use an indicator to do this. In case you have not seen it, we have extensive documentation on the use of indicators here https://www.dhis2.org/doc/snapshot/en/user/html/ch13.html#indicator_maintenance It should also be possible to calculate the value from other data, not contained in the data entry form, IF it exists for the same orgunit and period. Best regards, Jason On Mon, Sep 1, 2014 at 5:48 PM, Robin Martens mart...@sher.be wrote: Dear all, Does anyone know if there's a way to have auto-calculated fields in data entry forms? This auto-calculated field would then be available for further reporting and indicator calculation (i.e. it is a data element calculated based on other data elements in the same entry form). Actually, if it would be possible to calculate data elements based on other data elements outside of a data form, that would be great too (but if I remember well this is currently not possible). Thanks for any ideas, Robin ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] using the dhis OpenID problem
Yes, thanks Bharath and Morten. After getting your confirmation that there is no bug in dhis2, I was confident to scrutinize my configuration and reinstall openid server. It works great now with user logging from openid form can work in dhis2 like a charm. The most important trick is I think that is described in this forum: how to claim an id, i.e. saying that you are owner of that id. http://serverfault.com/questions/490608/how-to-configure-simpleid-to-claim-my-id Amazingly, the simpleid tool even though named as simple turns out to be the best openid server software (rated 5 stars on sourceforge) and was adopted by big institution like WHO. Now work left includes building a GUI for managing users of simpleid and every time a user created in simpleid, it must trigger a user creation in dhis2. Anyone who need helps, please feel free to contact me Thanh On Mon, Sep 1, 2014 at 11:55 AM, Bharath chbhara...@gmail.com wrote: Hi Thanh, We are using OpenId feature in DHIS, it is working fine for us. - To enable OpenID, first you have to setup in Settings - Access which seems you already done. - Then you need to specify your OpenId user for corresponding DHIS2 user for OpenID property. I am guessing the openid user that user setting may be wrongly, usually we set just openid user say some thing like chbharathk, but it should be openid uri something like https://aa.xx.cc/ads/openid/chbharathk or chbharathk.aa.xx.com, please check that part. I just tested with demo application (https://apps.dhis2.org/demo) it is working fine. On Mon, Sep 1, 2014 at 7:00 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Anyone use OpenID features in dhis? I tried it but it didn't work. I always see the login screen after I have successfully logged in via the openid provider. Is there a bug on dhis? any one who have experience on this please share with me. Thanks Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Regards, Bharath Kumar. Ch ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Auto-calculated data in entry forms
yes you can use custom data entry form and add some js script like onchange event on weight and height. the event handler should then calculate the bmi and update the text field bmi. do you have any technical person to do this? if not give me your account i can help On Sep 2, 2014 12:26 AM, Pamod Amarakoon pam...@gmail.com wrote: I'd like to add something to this. For example, if we have a data entry form (BMI) for a program stage if we have height and weight input boxes/data elements is there a way to calculate BMI? is it only possible by using javascript/webapp On Mon, Sep 1, 2014 at 10:21 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi I believe the calculated data value (now as indicator) can only be seen after an aggregation is run. In addition, in some forms in some countries like VN, auto-calculated data elements some time can be input by users. In VN, we use Javascript to achieve this. However, it is quite complicated. Imagine that you have to rebuild a spreadsheet engine. Important lesson learnt was if a dataelement is auto-calculated, make sure no one can change it manually. Otherwise, you end up with very low data quality. Thanh On Mon, Sep 1, 2014 at 11:15 PM, Jason Pickering jason.p.picker...@gmail.com wrote: Hi Robin, You can simply use an indicator to do this. In case you have not seen it, we have extensive documentation on the use of indicators here https://www.dhis2.org/doc/snapshot/en/user/html/ch13.html#indicator_maintenance It should also be possible to calculate the value from other data, not contained in the data entry form, IF it exists for the same orgunit and period. Best regards, Jason On Mon, Sep 1, 2014 at 5:48 PM, Robin Martens mart...@sher.be wrote: Dear all, Does anyone know if there's a way to have auto-calculated fields in data entry forms? This auto-calculated field would then be available for further reporting and indicator calculation (i.e. it is a data element calculated based on other data elements in the same entry form). Actually, if it would be possible to calculate data elements based on other data elements outside of a data form, that would be great too (but if I remember well this is currently not possible). Thanks for any ideas, Robin ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Pamod ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] using the dhis OpenID problem
Anyone use OpenID features in dhis? I tried it but it didn't work. I always see the login screen after I have successfully logged in via the openid provider. Is there a bug on dhis? any one who have experience on this please share with me. Thanks Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] What is recommended Identity Server for dhis2?
Hi all I went through a list here but confused on what identity server I should use. I plan to deploy multiple dhis2 instances which can be accessed by using same accounts (single sign on). For this, I want to have my own Identity Server without having to rely on Google or Facebook. http://wiki.openid.net/w/page/12995226/Run%20your%20own%20identity%20server Do anyone have experience on similar attempt or what server is best supported by dhis2? Thanks Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Dataentry bug for forms with category
Hi all I have a form: Form1 with data element DE1 This DE1 has a category combination named CC1 This category combination has only one category namely C1 This C1 has 4 options: O1, O2, O3, O4 The form (automatic) worked fine. However, when I add one more option to C1 say O5, the form did not show this option for dataentry. Is this a bug? If not, it is very rigid as options should be changed over time. Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Screenshots of data entry module - could not load the orgtree
Hi Morten It happened with almost all kinds of browsers and OS This is copy from my pc which uses Windows 7 and Version 34.0.1847.137 m *Nguyễn Ngọc Thành* On Wed, May 21, 2014 at 2:12 PM, Morten Olav Hansen morte...@gmail.comwrote: Which browser is this? I think you need to provide the exact version + os -- Morten On Wed, May 21, 2014 at 3:42 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Document was loaded from Application Cache with manifest https://hny.vn/sarus/dhis-web-commons/cacheManifest.action index.action:1 Application Cache Checking event index.action:1 Application Cache NoUpdate event index.action:1 Uncaught TypeError: Cannot read property 'transaction' of undefined dhis2.storage.idb.js?_rev=13700:244 Application Cache Checking event index.action:1 Application Cache NoUpdate event index.action:1 event.returnValue is deprecated. Please use the standard event.preventDefault() instead. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Problem with offline content on data entry module
We use dhis2.4. This happened with all kinds of browsers: chrome, firefox, safari. For developer consoles, as it happened on users' machine, we did not taken any snapshot. But from now, we try to collect that kind of information Thanh On Tue, May 20, 2014 at 3:18 PM, Morten Olav Hansen morte...@gmail.comwrote: Thanh, Can you give some more info. Which version of dhis2? which browser and version? does it give you anything in the developer console? In general dhis2 behaves a lot better in dhis 2.14/2.15 with regards to browser storage, but there might still be some glitches here and there -- Morten On Tue, May 20, 2014 at 10:14 AM, J. Paul Mutali mut...@gmail.com wrote: Hi Thanh, I have had the issue with the Org unit not loading, but I have realized that it was due to outdated browsers. *-* *JEAN PAUL MUTALI* Kigali - RWANDA Skype: mutali.rw http://mutali.rw/ If we don't learn to program, we risk being programmed ourselves... program or be programmed On Tue, May 20, 2014 at 10:07 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi everyone We are suffering heavily with the localstorage problem in data entry module. When user login for the first time, the orgunit tree can not be loaded. This problem is only solved when we either clear the cache of the browser or re-assign orgunit for the users. As this happened for thousands of hospitals, answering phone call for support for that number of users become a nightmare. Have you experienced something similar or any to overcome this? Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Problem with offline content on data entry module
Of course, when I run on my computer, it said valid json. Let me try to spot the affected computers that has the problem and check that. Thanh On Tue, May 20, 2014 at 4:45 PM, Morten Olav Hansen morte...@gmail.comwrote: That sounds weird. Could you try: SERVERdhis-web-dataentry/getMetaData.action and run the output through http://jsonlint.com/ ? just to make sure the json is valid, sometimes a bad indicator or something might mess up the output (although it doesn't seem like this is the problem here). It would really help if you can give me the output from the developer console it hard to debug without it. -- Morten On Tue, May 20, 2014 at 11:36 AM, Tien De Nguyen dent.j...@gmail.comwrote: Hi Morten, Here is screeen shot of dataentry form. The dataset combobox always loading... Sometime problem is resolved when we clear browser cache, reassigne user to other orgunit or create new user with the same orgunit. But sometime one of them can not resolve problem. I also try to update the newest browser version but it still loading all of time. [image: Inline image 1] - Tiến Đệ Mobile: 091 686 3797 On Tue, May 20, 2014 at 4:06 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: We use dhis2.4. This happened with all kinds of browsers: chrome, firefox, safari. For developer consoles, as it happened on users' machine, we did not taken any snapshot. But from now, we try to collect that kind of information Thanh On Tue, May 20, 2014 at 3:18 PM, Morten Olav Hansen morte...@gmail.comwrote: Thanh, Can you give some more info. Which version of dhis2? which browser and version? does it give you anything in the developer console? In general dhis2 behaves a lot better in dhis 2.14/2.15 with regards to browser storage, but there might still be some glitches here and there -- Morten On Tue, May 20, 2014 at 10:14 AM, J. Paul Mutali mut...@gmail.comwrote: Hi Thanh, I have had the issue with the Org unit not loading, but I have realized that it was due to outdated browsers. *-* *JEAN PAUL MUTALI* Kigali - RWANDA Skype: mutali.rw http://mutali.rw/ If we don't learn to program, we risk being programmed ourselves... program or be programmed On Tue, May 20, 2014 at 10:07 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi everyone We are suffering heavily with the localstorage problem in data entry module. When user login for the first time, the orgunit tree can not be loaded. This problem is only solved when we either clear the cache of the browser or re-assign orgunit for the users. As this happened for thousands of hospitals, answering phone call for support for that number of users become a nightmare. Have you experienced something similar or any to overcome this? Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Problem with offline content on data entry module
I have tried to put this dataset as Not Allowed Offline. Do you think it helps? We will watch out today to see whether any hospitals call for this support *Nguyễn Ngọc Thành* On Wed, May 21, 2014 at 4:40 AM, Ha Thai Son hathai_...@yahoo.com wrote: Có cách nào xử lý nhanh hơn, hôm qua anh đã nhận được yêu cầu cung cấp số liệu cho Bộ rồi, Lần này mà không có số liệu thì không còn gì để nói nữa Thực tế cho thấy không thể lấy số liệu chi tiết trong thời gian ngắn trên phạm vi toàn quốc được. Tập trung hoàn thiện hệ thống báo cáo tổng hợp trước, Hiện vẫn rất cần em thiết kế cột Cộng dồn, về logic thì có vẻ thừa, nhưng thực tiễn thì rất hiệu quả, bất cứ thời điểm nào cũng capture được tình hình dịch bệnh, Mình không có tiền làm tập huấn nên để hướng dẫn cho mọi người nhập số liệu tồn vào một ngày là rất khó. Bs. Hà Thái Sơn Cục Quản lý khám chữa bệnh - Bộ Y tế On May 20, 2014, at 16:06, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: We use dhis2.4. This happened with all kinds of browsers: chrome, firefox, safari. For developer consoles, as it happened on users' machine, we did not taken any snapshot. But from now, we try to collect that kind of information Thanh On Tue, May 20, 2014 at 3:18 PM, Morten Olav Hansen morte...@gmail.comwrote: Thanh, Can you give some more info. Which version of dhis2? which browser and version? does it give you anything in the developer console? In general dhis2 behaves a lot better in dhis 2.14/2.15 with regards to browser storage, but there might still be some glitches here and there -- Morten On Tue, May 20, 2014 at 10:14 AM, J. Paul Mutali mut...@gmail.comwrote: Hi Thanh, I have had the issue with the Org unit not loading, but I have realized that it was due to outdated browsers. *-* *JEAN PAUL MUTALI* Kigali - RWANDA Skype: mutali.rw http://mutali.rw/ If we don't learn to program, we risk being programmed ourselves... program or be programmed On Tue, May 20, 2014 at 10:07 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi everyone We are suffering heavily with the localstorage problem in data entry module. When user login for the first time, the orgunit tree can not be loaded. This problem is only solved when we either clear the cache of the browser or re-assign orgunit for the users. As this happened for thousands of hospitals, answering phone call for support for that number of users become a nightmare. Have you experienced something similar or any to overcome this? Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Screenshots of data entry module - could not load the orgtree
Document was loaded from Application Cache with manifest https://hny.vn/sarus/dhis-web-commons/cacheManifest.action index.action:1 Application Cache Checking event index.action:1 Application Cache NoUpdate event index.action:1 Uncaught TypeError: Cannot read property 'transaction' of undefined dhis2.storage.idb.js?_rev=13700:244 Application Cache Checking event index.action:1 Application Cache NoUpdate event index.action:1 event.returnValue is deprecated. Please use the standard event.preventDefault() instead. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Android GIS App to Update OrgUnits
Great work. Do you have any link between the logined users and the orgunit theycan update coordinates? If not, they may select a others' orgunits and overwrite the values. Thanh *Nguyễn Ngọc Thành* On Thu, Mar 20, 2014 at 8:48 PM, wanjala pepela wanjal...@yahoo.com wrote: That will be great PEPELA WANJALA *MINISTRY OF HEALTH HEADQUARTERS* *HEALTH SECTOR MONITORING EVALUATION* *AFYA HOUSE, LG 37* *P.O BOX 30016, NAIROBI, KENYA* *TEL: +254 (020) 2717077 EXT 45097* *CELL: +254 (0) 722375633 * *EMAIL: wanjal...@yahoo.com wanjal...@yahoo.com, wanjal...@gmail.com wanjal...@gmail.com* *h...@health.go.ke h...@health.go.ke* *HealthInformation Management - Making a World of Difference”* On Thursday, March 20, 2014 3:31 PM, Juma Lungo jlu...@yahoo.com wrote: Dear all, We have completed to develop an Android GIS app which updates facility coordinates in DHIS2. This app can be used to collect GIS coordinates of all orgunits. The app grab coordinates of the location, so to collect orgunit, a user need to visit a facility and update from inside the facility building. It can be installed on any Android Mobile Phone. The 'save' button would not be displayed if a user has forgotten to switch on the GPS on the mobile. A user will preview the coordinates before uploading. It will 'always' overwrite existing coordinate. A user can view and hence updates coordinates of the facilities assigned to her. To assign facilities to user, it uses the same inbuilt user roles of the DHIS2. We are making final testing and we will publish it early next month. see attached screenshots. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to: dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Password Generation
Kenneth Have you read one of my mail in previous discussion. I used this approach to generate 2000 users automatically with passwords, roles, and assign them to appropriate orgunit where the users belong to In case you need to expedite creation of thousands of users and passwords the following classes might help. In essence, all of user creation steps can be done by sql. However, password hash is a bit tricky in dhis2 when it depends on Spring Security. https://dl.dropboxusercontent.com/u/63702128/dhis2%20user%20generator/GeneratePassword.java https://dl.dropboxusercontent.com/u/63702128/dhis2%20user%20generator/RandomGenerator.java After having a list of username and password pairs you can use sql to fill in users and userinfo tables, plus other germane tables for assigning orgunit and roles. Cheers, Thanh *Nguyễn Ngọc Thành* On Thu, Mar 20, 2014 at 7:35 PM, Kenneth Børtveit kenneth.bortv...@gmail.com wrote: Thanks everybody :) Not really fond of registrating users with queries. I think it will effect the reporting rates in a bad way. I think registrating users should be done through the DHIS2 interface while giving instructions on how to use the reporting system and involving the right people. For now I am trying to set up a test environment that will show if DHIS2 is supporting a set of requirements and try to document the steps needed for the system to meet those requirements. Attached is a draft of the requirements and a simple stand-alone .jar file for testing purposes. encode_password.jarhttps://docs.google.com/file/d/0B-3Ir8CscLiLOW1BVlpINEdTakk/edit?usp=drive_web 2014-03-20 11:57 GMT+01:00 Bob Jolliffe bobjolli...@gmail.com: OK you asked for it ... Ken the algorithm is contained in the attached Password.java file (its based on what I figured out from the spring source code). This little java program takes the username and password as parameters and outputs the username,password and hash as recognised by dhis2. So if you have for example a csv file containing many, many users, then you can incorporate a script along the lines of the attached genpass.tcl to generate the hash codes in bulk. Or just expand the java program to read the csv file and possibly even write into postrgres table. (Personally I prefer to do do things a little bit at a time and script through psql). Anyway thats up to you .. the algorithm is here. There are some security considerations. The hash algorithm itself is not great, but you are stuck with emulating what happens inside dhis2 so no point tinkering with that (MD5 must seem like plaintext to the NSA nowadays). A more important consideration is how to generate the 45000 passwords. I have used the makepasswd program to generate fairly cryptic random passwords (also in a script) but users didn't like them, naturally. Randy initially assigned them things like password1, password2, password3 etc which is also not ideal. I wonder is the self registration feature an option for you? Not that users necessarily pick good passwords anyway :-( Regards Bob On 20 March 2014 07:18, Jason Pickering jason.p.picker...@gmail.comwrote: I think Bob is the best source for this. I have some R scripts but the generated password is not always correct due to peculiar methods which spring uses to encrypt the passwords which elude me. --Sent from my mobile On Mar 20, 2014 5:46 PM, Knut Staring knu...@gmail.com wrote: Here are some documents that Randy Wilson shared on the list - though they state for Hashpassword: we have not yet found a quicker way to do this than to send the excel file to Bob Jolliffe or Knut Staring (HISP). There is a special algorithm they use to create the MD5 hash password, combining the username and the assigned text password. Unfortunately I don't remember exactly how I used to do it...would be good if you share a how to when you figure it out... On Thu, Mar 20, 2014 at 7:42 AM, Jason Pickering jason.p.picker...@gmail.com wrote: Hi Kenneth, You must look at the source code of DHIS2 and Spring in order to understand it. It is not a simple hash, but a salted hash depending on the username and password together. This has been previously discussed on this list, but it is most clear by analyzing the source code. Best regards, Jason On Thu, Mar 20, 2014 at 5:39 PM, Kenneth Børtveit kenneth.bortv...@gmail.com wrote: Hi. I am trying to generate passwords to almost 45,000 users in Rwanda. There is no problem in generating a random sequence of characters, the problem is storing it in a database. The password is stored as a hash, but I don't know which hash function to use. Could anybody assist? -Kenneth ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] dhis has Remember me?
I think this feature is very useful. Users do not have to re-sign in many times. Do we have this? ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Malicious uploaded files to dhis. Tomcat bug or dhis?
Excellent Bob. i think we use tomcat manager. Then it is the problem. On Tuesday, October 22, 2013, Bob Jolliffe bobjolli...@gmail.com wrote: Hi Thanh Never seen this. But to answer how they could be uploaded to your folder, there are many many ways. First check that they are not bundled in your war file to start with (Just to be paranoid I just rechecked the standard download from dhis2.org). ie. be sure it is not the developer who is unwittingly (or wittingly!) spreading this. Then you need to tell us more about how your tomcat is deployed and on what. Basically you are looking at two possibilities - your operating system is compromised and the offending items have been copied in to the webapps folder. There are obviously a couple of ways this could happen. Or a weakness is being exposed by an application running on the webserver itself. The second is more likely. The first would assume that you really do have enemies who want to get you and know how (I guess not to be dismissed!) whereas the second would be more likely to be a robotic sort of attack which targets your server for the simple reason that it is vulnerable. A quick checklist: 1. Is tomcat running as root user? I see this so many times. Do not run it as root as if it is compromised the damage cannot be easily limited 2. Are you running the tomcat manager application? My guess is that probably it would require the manager application to be able to make such modifications to existing webapps. And there are many known vulnerabilities to this which are being revealed and plugged regularly. If you must run it then you need to secure which ips have access to it and not expose it the internet. Note if you just downloaded tomcat binary as is from the internet and unpacked that in all its glory you will be running the manager by default. 3. Are you running behind a proxy (nginx/apache)? You should always do this as it can provide an additional layer of protection to your tomcat (performance protection with caching, transport protection with ssl, tomcat misconfiguration protection). To be really effective of course you make sure tomcat is only listening on localhost interface. 4. Are you using ssl to protect passwords? There's lots of other good avice here http://tomcat.apache.org/tomcat-7.0-doc/security-howto.html . Don't destroy the audit trail when you clean up after this mess - ie. keep a copy of all log files as the offending jsps. Then start again, carefully. Have you looked in to the contents of those files? Could be there are clues there ... Bob On 22 October 2013 05:30, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi all, In the server we found some strange files, definitely malicious. How could they upload them to dhis2 folder? Any one have the same problem? /mail/u/0/s/?view=attth=141dfa22127061b9attid=0.1disp=embrealattid=ii_141de6c36edfbe55zwatsh=1 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- *Nguyễn Ngọc Thành* ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Data entry form navigated in 4 directions using arrow keys
Many users requested to be able to do 4 ways navigation in entry form. I made the following change to enable that feature. I'd like to share it to those who have ever received that kind of request from users. 1. Remove the keypress bind event in form.js 2. Add an attribute (I used mycol) to each text field to group all the inputs that belong to a column. Like this input name=entryfield mycol='col$colid' 3. Add the following js script to the entry form. It works really fine. $(document).ready(function() { $(.entryfield).keydown( function (e) { switch(e.keyCode) { // left arrow case 37: $(this).parent() .prev() .children(.entryfield) .focus(); break; // right arrow case 39: $(this).parent() .next() .children(.entryfield) .focus(); break; // up arrow + as attr name is already used, I defined mycol to mark the cells that belong to 1 column case 40: $(this).parent() .parent() .next() .children(td) .children(.entryfield[mycol=+$(this).attr(mycol)+]) .focus(); break; // down arrow case 38: $(this).parent() .parent() .prev() .children(td) .children(.entryfield[mycol=+$(this).attr(mycol)+]) .focus(); break; } }); }); ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Copy data from Excel to data entry form
I have made a feature that allows direct copy from Excel sheet and past to data entry form If anyone are interest, you can refer the doc below Here is some screenshots on how it works https://dl.dropboxusercontent.com/u/63702128/HuongDanImport.docx *Nguyễn Ngọc Thành* ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Copy data from Excel to data entry form
Hi Paul, It is only available on Vietnam branch, not in main trunk. There are 2 ways. I can send the code snippet and you paste onto your current data-entry module. The other way is to make a petition to global to include this into trunk. Actually code is so simple, they all are client sides and very easy to adapt //COPY AND PASTE THIS SNIPPET TO ANY VM FILE OF THE DATAENTRY MODULE !--make a link on top of the page-- div id='exportPanel' style='position:fixed; right:30px; top:20px; border-bottom: 1px solid grey; ' a href='javascript:importExcel();' style='color:white;'Import Excel.../a /div !--this is the dialog -- div id='pasteTableDialog' style='display:none;' Step 1. Open Excel sheet, select area and press Ctrl+C br/ Step 2. Press Ctr+V to paste to this box: textarea id='excel_data' onblur='createSourceTable();' onfocus=$(this).val('');/textarea br/ Step 3. Press this button to transfer data input type='button' value='Copy' onclick='copyTable();' cols='20' / hr/ div id='excel_table'/div /div script $( #pasteTableDialog ).dialog({ width: 850, height: 750, autoOpen: false, modal:true, title:COPY FROM EXCEL }); function importExcel() { $( #pasteTableDialog ).dialog('open'); } function createSourceTable() { var data = $('#excel_data').val(); var rows = data.split(\n); var table = $('table border=1 /'); for(var y in rows) { var cells = rows[y].split(\t); var row = $('tr /'); for(var x in cells) { row.append('td'+cells[x]+'/td'); } table.append(row); } // build the table from clipboard data $('#excel_table').html(table); } function copyTable() { var oSource = $(#excel_table); var oDest = $(#contentDiv); //contentDiv is a dhis div var arrSourceInputs = oSource.find(td); $('.entryfield').each(function(i){ td = arrSourceInputs[i]; $(this).val(td.innerText); //trigger change to call saveValue $(this).change(); }); } //END OF THE SNIPPET *Nguyễn Ngọc Thành* On Wed, Sep 25, 2013 at 9:13 PM, Paul Amendola paul.amend...@rescue.orgwrote: Hi Ngoc ** ** This feature is great and exactly what we need. How can I download the feature? Any chance you have an English version of the guidelines? ** ** Thanks Paul ** ** ** ** *Paul R. Amendola | Technical Advisor for Health Information Systems *International Rescue Committee 122 E 42nd Street, New York, NY 10168-1289 | *Rescue.org* T +1 212 551 0995 | Skype paul.amendola [image: IRC eSignature Graphic] ** ** ** ** ** ** ** ** *From:* Dhis2-devs [mailto:dhis2-devs-bounces+paul.amendola= theirc@lists.launchpad.net] *On Behalf Of *Ngoc Thanh Nguyen *Sent:* Wednesday, September 25, 2013 6:29 AM *To:* dhis2-devs; Thuy Nguyen *Subject:* [Dhis2-devs] Copy data from Excel to data entry form ** ** I have made a feature that allows direct copy from Excel sheet and past to data entry form ** ** If anyone are interest, you can refer the doc below ** ** Here is some screenshots on how it works ** ** https://dl.dropboxusercontent.com/u/63702128/HuongDanImport.docx *Nguyễn Ngọc Thành* ** ** ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Distributed DHIS2 and DHIS2 cloud
ok, Jason. I have some quick note but will detail it and send back to you Thanh *Nguyễn Ngọc Thành* On Mon, Sep 23, 2013 at 10:42 PM, Jason Pickering jason.p.picker...@gmail.com wrote: Hi Thanh, Lets put it back on the list with your findings.I wanted to be sure we had some consensus before proceeding too much with that line. I think the configuration steps you took would be great to have in the documents. Why don't you summarize what you find out and i can help you write everything up into the docs as an alternative, which is perhaps better. The example I gave was complete overkill, but maybe you found a good balance between having a highly available cluster, versus a complete overkill (which I think was my problem). Regards, Jason On Mon, Sep 23, 2013 at 5:28 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Jason, thanks for the discussion. I eventually can get dhis2 work with Tomcat clustering. Persisting sessions in jdbc works like a charm with very less configuration. Aggregation data entry could happen quite rare, every month or every quarter. However, individual data capture can happen daily in real time so being down for 1 hour could be catastrophe. My argument is dhis2 can be even better if it is configured followed strict standards of commercial systems such as High Availability, High Scalability. Instead of having 1 server with 16G RAM, why don't we have 2 separate ones with 8GB each? I don't know why our discussion goes off the list? Thanh *Nguyễn Ngọc Thành* On Mon, Sep 23, 2013 at 10:37 AM, Jason Pickering jason.p.picker...@gmail.com wrote: Of course it depends on the use case, my point here was what is the use case?? I just did not want you trying to prove to some corporate people that just because we are using an OpenSource product like DHIS2/Tomcat, that it is somehow less robust than some commercial equivalent, for the vast majority of use cases. But now it seems the requirement is different. I think for the case you mention, that has never been tested or confirmed I think and would need you to implement session sharing across multiple tomcat instances. That sounds a lot more difficult to do than a simple cluster. Even if it did work, it would require users (usually or often) to clear their browser cache anyway. IMHO, Upgrades should something which should be done at night, with few users active. Normally, they should take less than two minutes, again depending on the size of your server. Upgrades to a production server should be tested in a testing environment and confirmed to work, as usually, they are things you cannot easily roll-.back. So, if you are upgrading a production instance every day or multiple times a day, it would seem to me you are asking for trouble. Again, just the way I feel about it, but trying to implement a clustering solution to solve this requirement sounds pretty risky to me. Would certainly be worth to investigate and see if you can get it to work, as it would certainly help increase redundancy of the deployments. Regards, Jason On Mon, Sep 23, 2013 at 1:48 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: It is, Jason. I think we will need a cluster in case of upgrading dhis2. When you want to change a jar file, you have to shutdown the whole application but if you have 2 servers you can do one by one and there is no pause in the service. I think it depends on the use case. *Nguyễn Ngọc Thành* On Sun, Sep 22, 2013 at 9:47 PM, Jason Pickering jason.p.picker...@gmail.com wrote: Hi Thanh, Going to take this off the list for the moment, as it may not be so constructive. I would take a step back and ask what the use case is. Why do you need a cluster? Do you know you need a cluster? I think doing it could be a fun way to spend a Sunday afternoon, but my wife would probably think it better to spend time with the kids. My point is that unless you know you need to do it, don't bother, because it has been done before, and it is nothing exotic. It may be good experience for you, so could be worth it. However, setting up a DB cluster, Tomcat cluster, foo cluster has been done by many others, and the process is well documented and proven, so I see no particular need to prove we can setup DHIS2 in this environment. We know that it can be done, because it has been done with others with very similar types of Java applications. I have setup a similar type of architecture with Amazon RDS in the background, fleets of application servers, fronted by load balancers (Apache). Nothing really so fancy. But it turned out to be complete overkill, and we went back to a single server with 16 GB of memory, and it works just fine for out needs. Regards, Jason On Sun, Sep 22, 2013 at 3:45 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Thanks Jason. The reply is insightful. I now try to set up dhis2 on a Tomcat
Re: [Dhis2-devs] Distributed DHIS2 and DHIS2 cloud
a sale of unneeded licences. Regards, Jason On Sun, Sep 22, 2013 at 3:14 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi all, Some commercial affiliated companies want to kick dhis2 out so they made the following arguments: DHIS2 is not built on and use well-know reliable solutions such as Microsoft Sharepoint, IBM Websphere, Oracle Bea Weblogic When most of this is wrong they have some valid points that we need to be prepared in order to fight back. I would like to get your ideas on 1. When multiple DHIS2 instances can be deployed in multiple servers (virtual or physical) and load balanced by a hard or soft balancer (nginxs), this can not solve the real problem of distributed HTTP sessions like what can be done in Application Server, i.e. a logged in users connected to a instance and this instance die, how can they continue without relogin. Can using Application Server solve the problems without having to rewrite dhis2? How are we going to solve this? Will we need to use commercial solutions like Terracotta BigMemory or IBM Data Grid? 2. For database scale, with one database instances installed on single server. it has the risk of data loss. We can use database clusters to address this issue, and data on clusters mostly rely on memory. My question is how this cluster will work with distributed sessions described in question 1. 3. I would like to know the typical deployment of dhis2 in other countries. Is that on one or multiple server, with or without database clusters? I heard that many countries go for cloud but I am not sure if it is a single or multiple cloud servers? Can cloud provide us a single virtual but unlimited RAM and CPUs server? As if yes, then we don't have to worry about question 1, 2 because we can simple add 1000 GB RAM and 10 CPUs to that cloud server. Thanks in advanced. Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Knut Staring Dept. of Informatics, University of Oslo +4791880522 http://dhis2.org ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Distributed DHIS2 and DHIS2 cloud
Hi all, Some commercial affiliated companies want to kick dhis2 out so they made the following arguments: DHIS2 is not built on and use well-know reliable solutions such as Microsoft Sharepoint, IBM Websphere, Oracle Bea Weblogic When most of this is wrong they have some valid points that we need to be prepared in order to fight back. I would like to get your ideas on 1. When multiple DHIS2 instances can be deployed in multiple servers (virtual or physical) and load balanced by a hard or soft balancer (nginxs), this can not solve the real problem of distributed HTTP sessions like what can be done in Application Server, i.e. a logged in users connected to a instance and this instance die, how can they continue without relogin. Can using Application Server solve the problems without having to rewrite dhis2? How are we going to solve this? Will we need to use commercial solutions like Terracotta BigMemory or IBM Data Grid? 2. For database scale, with one database instances installed on single server. it has the risk of data loss. We can use database clusters to address this issue, and data on clusters mostly rely on memory. My question is how this cluster will work with distributed sessions described in question 1. 3. I would like to know the typical deployment of dhis2 in other countries. Is that on one or multiple server, with or without database clusters? I heard that many countries go for cloud but I am not sure if it is a single or multiple cloud servers? Can cloud provide us a single virtual but unlimited RAM and CPUs server? As if yes, then we don't have to worry about question 1, 2 because we can simple add 1000 GB RAM and 10 CPUs to that cloud server. Thanks in advanced. Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Problem when installing dhis2.12 on Linux server with Postgres database and embeded hibernate properties in jar
Hi all We recently move dhis2 to Hibernate (CentOS Ubuntu) but we both faced the problem of not being able to start dhis if the hibernate is embeded in dhis-support-hibernate.jar We also noticed that no white space allowed after every line in the config file. In Windows, it is fine. I guess it might be related to how Linux handle the properties file. Any directions? *Nguyễn Ngọc Thành* ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Where is stderr, stdout of Tomcat in linux
Hi We just moved to Linux server but could not find where stderr and stdout message in Tomcat are logged. Any suggestions? ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Where is stderr, stdout of Tomcat in linux
thanks Knut. I overlooked it when opening it using nano command, it is too big to be displayed on nano now its fine Thanh On Wed, Jul 24, 2013 at 3:51 AM, Knut Staring knu...@gmail.com wrote: Perhaps tomcat/logs/catalina.out On Tue, Jul 23, 2013 at 10:49 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi We just moved to Linux server but could not find where stderr and stdout message in Tomcat are logged. Any suggestions? ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Knut Staring Dept. of Informatics, University of Oslo +4791880522 http://dhis2.org ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Strange request from 127.0.0.1
In our server tomcat access log, there are lots of requests from 127.0.0.1 which is obviously local request. However, no one from our team actually working from the server so it must be automatic requests. This might be the reason for our server problems last several days as the system always results in full CPU or exceeding memory. Any one have ideas on how to kill these process? Thanks ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Strange request from 127.0.0.1
Hi Jerome, Is your server public? In my case, I am guessing that some bad guys have hacked into the system by exploiting some security holes of the system or probably dhis2 itself. Thanh On Fri, Jul 19, 2013 at 5:05 PM, jerome shaguy jeromesha...@gmail.comwrote: Hi, I have also been experiencing the same problem with my tomcat as reported by Ngoc (but in my case it was only after I upgraded my war file to 2.12) I am seeing a lot of requests in the log even though I am on 127.0.0.1 and its constantly exceeding memory and completely halting simple processes... I have tried to adjust memory to tomcat but this has not helped. I join Ngoc in asking is there anyone out there with a solution? On Fri, Jul 19, 2013 at 10:20 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: In our server tomcat access log, there are lots of requests from 127.0.0.1 which is obviously local request. However, no one from our team actually working from the server so it must be automatic requests. This might be the reason for our server problems last several days as the system always results in full CPU or exceeding memory. Any one have ideas on how to kill these process? Thanks ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Strange request from 127.0.0.1
Thanks Bob. That's definitely the case. However, do you think this can affect the performance? In other words, will it cause server memory or cpu problem? Thanh On Fri, Jul 19, 2013 at 7:24 PM, Bob Jolliffe bobjolli...@gmail.com wrote: I am sure you have a proxy (nginx or apache?) on the same machine. So the users access the proxy and the proxy accesses tomcat (which sees the request as a local one). You need to add a directive to your proxy to preserve the name of the requesting host. On nginx this is: see http://ashberlin.co.uk/blog/nginx-proxy-host-header On apache2: http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypreservehost Bob On 19 July 2013 13:39, jeromesha...@gmail.com wrote: ** Hi Ngoc, no my server is not public Sent from my BlackBerry wireless device from MTN -- *From: * Ngoc Thanh Nguyen thanh.hispviet...@gmail.com *Date: *Fri, 19 Jul 2013 18:36:20 +0700 *To: *jerome shaguyjeromesha...@gmail.com *Cc: *dhis2-devsdhis2-devs@lists.launchpad.net *Subject: *Re: [Dhis2-devs] Strange request from 127.0.0.1 Hi Jerome, Is your server public? In my case, I am guessing that some bad guys have hacked into the system by exploiting some security holes of the system or probably dhis2 itself. Thanh On Fri, Jul 19, 2013 at 5:05 PM, jerome shaguy jeromesha...@gmail.comwrote: Hi, I have also been experiencing the same problem with my tomcat as reported by Ngoc (but in my case it was only after I upgraded my war file to 2.12) I am seeing a lot of requests in the log even though I am on 127.0.0.1 and its constantly exceeding memory and completely halting simple processes... I have tried to adjust memory to tomcat but this has not helped. I join Ngoc in asking is there anyone out there with a solution? On Fri, Jul 19, 2013 at 10:20 AM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: In our server tomcat access log, there are lots of requests from 127.0.0.1 which is obviously local request. However, no one from our team actually working from the server so it must be automatic requests. This might be the reason for our server problems last several days as the system always results in full CPU or exceeding memory. Any one have ideas on how to kill these process? Thanks ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Routinely used comboboxes with unique options
Yes, this definitely makes dhis2 become more user friendly like On Fri, Jul 19, 2013 at 8:05 PM, Knut Staring knu...@gmail.com wrote: Here is a proposal to improve usability by auto-selection when there is only one option available. https://blueprints.launchpad.net/dhis2/+spec/unique-options-as-default -- Knut Staring Dept. of Informatics, University of Oslo +4791880522 http://dhis2.org ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Automatically mass-generate dhis2 usernames and passwords
In case you need to expedite creation of thousands of users and passwords the following classes might help. In essence, all of user creation steps can be done by sql. However, password hash is a bit tricky in dhis2 when it depends on Spring Security. https://dl.dropboxusercontent.com/u/63702128/dhis2%20user%20generator/GeneratePassword.java https://dl.dropboxusercontent.com/u/63702128/dhis2%20user%20generator/RandomGenerator.java After having a list of username and password pairs you can use sql to fill in users and userinfo tables, plus other germane tables for assigning orgunit and roles. Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Automatically mass-generate dhis2 usernames and passwords
Hi Jason and Bob, Thanks for rich information about various alternatives of this batched user creation. Actually, someone pointed me to an email written by Jason about this topic but the technique in use was R which I am out of competence, thus I did not know that R can invoke a Java class. Therefore, I was reluctantly looking at dhis2 module and try to mimic this user-generator process. Above all of solutions, excel seems to be a good way as it helps non-dev people to be involved. However, it might have to also solve the problem of updating database which again will require either sql or other scripting language. I think the best approach could be we institutionalize this process by making an online utility that can generate a sql file (or dxf whatever easier and more convenient) that users can copy and run on their db. Thanh On Fri, Jul 5, 2013 at 11:58 PM, Jason Pickering jason.p.picker...@gmail.com wrote: Again, look at the R code. I tried to do this in pure R, but it didn't work. Therefore, I call the Java class directly to calculate the hashCode. I suppose one could delve into the depths of this part of the Java source code, but I did not go there. Easier just to call the Java class directly and not try and remake the wheel. Regards, Jason On Fri, Jul 5, 2013 at 6:10 PM, Bob Jolliffe bobjolli...@gmail.comwrote: Ah Jason I've been down this path (in tcl not surprisingly) ... You are almost correct. For short strings. But there is some conditional related to the length of the string. Don't remember the details. I think the string hash code is run over a truncated string. I'll leave that to someone more enthusiastic. I mention VBA just because I guess excel would be a common environment for creating these masses of users. At least they did that in Rwanda. Mind you there is a horrible temptation to create these with simple and/or duplicate passwords. On 5 July 2013 16:46, Jason Pickering jason.p.picker...@gmail.comwrote: VBA? Really? It is pretty simple actually.. Look at the R code and it is supersimple. First you calculate the Java hash code ( http://en.wikipedia.org/wiki/Java_hashCode()) of the user name and wrap this in curly braces and prepend the desired password. . Since the algorithm is well documented, I guess a creation of VBA function to do this should be simple. Concatenate the password and the hashed username together, and calculate the MD5 sum of that string. What results is the salted encrypted password which should work for DHIS2. But then one either needs to create a series of SQL inserts (userinfo, users, usermembership, userrolemembers in that order) or I guess use DXF to import it all. Have done it in R, but not sure I want to try with VBA. :) Regards, Jason On Fri, Jul 5, 2013 at 5:40 PM, Bob Jolliffe bobjolli...@gmail.comwrote: I suspect what would be really useful is to have a VBA (or whatever the .net equivalent is) of this hash algorithm so that it can be easily used with excel. I started picking the spring algorithm with java string hash apart once .. got about 80% through then got bored and stuck with java. On 5 July 2013 16:15, Jason Pickering jason.p.picker...@gmail.comwrote: Thanks for this. Looks very useful. Another way to do this (which I have mentioned before on the list, is with R). Here are a couple of R code fragments which I think I have sent previously. #Generate the Java Hash Code. R does not calculate this properly, so we have to revert to using Java for now. javaHashCode-function(string=) { require(rJava) .jinit() s - .jnew(java/lang/String, string) .jcall(s,I,hashCode) } #Start to generate the encrypted passwords genEncryptedPass-function(password=district,username=admin) { #This is needed for the digest function require(digest) digest(paste0(password,{,javaHashCode(username),}),serialize=FALSE) } #Start to build up the data frame here result-as.data.frame(cbind(usernames,passwords),stringsAsFactors=FALSE) result$encrypt-mapply(genEncryptedPass,password=result$passwords,username=result$usernames) So, with these two basic functions (javaHashCode and genEncryptedPass), you can generate the meat of what you need. If you have a list of usernames and passwords (which of course can also be generated in R) in a dataframe called result, the last line will give you the encrypted password. Using SQL, you can then generate of course some insert statements or DXF to import into DHIS2. If anyone needs more code for this, I can provide some more details. I suspect the same thing could be easily done with other scripting languages as well. I think these Java classes will help but would suggest to abstract out these methods a bit as right now, the DB connection is hard coded? Regards, Jason On Fri, Jul 5, 2013 at 4:26 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: In case you need to expedite creation of thousands of users
Re: [Dhis2-devs] Dùng tính năng lập danh sách làm việc để in các mẫu phiếu và in chứng chỉ
Cảm ơn email của Hiền. Nếu các đơn vị khác cũng làm được như Đà nẵng thì phần mềm này chắc không cần phải training gì hết. Anh có cc cho các bạn trong nhóm hỗ trợ để có thêm kinh nghiệm khi hỗ trợ chỗ khác. Em xem trả lời của a phía dưới 2013/2/20 Hien Nguyen dsthuhien_dan...@yahoo.com hi anh Thanh cám ơn anh vì có thêm mục danh sách làm việc, nó tiện lợi hơn trước đây rất nhiều. tuy nhiên còn 1 xíu này em nhờ anh giúp, khi in danh sách ra file excel để lưu lại, em cần thêm 1 cột số điện ok, anh sẽ thêm cả 3 cột: số ĐT nhà, di động, và email luôn. thoại. ngoài ra việc in chứng chỉ bằng phần mềm em chưa thực hiện được do các vấn đề sau: 1. máy in dùng để in chứng chỉ đang nối với máy tính cũ, dùng internet rất chập chờn 2. máy tính mới em dùng để gửi mail cho anh đây nối với máy in ko chất lượng, em với anh IT ở sở ko kết nối máy in chứng chỉ với máy tính mới đc, ko biết anh có giúp em đc ko nếu kết nối không được có lẽ do driver, Windows XP hỗ trợ rất ít driver nhất là các thiết bị đời mới, có khi không hỗ trợ luôn. Microsoft cũng hết hỗ trợ WinXP, em cho a biết hiệu máy in đời máy in a tìm driver thử xem, nếu ko được chắc phải chuyển sang Win7 hoặc Wind8 3. mẫu in chứng chỉ theo phần mềm ko tương thích với phôi chứng chỉ hành nghề của sở em đc cấp. nếu em in ra thì chữ sẽ tràn ra ngoài. ngoài ra em nhận phôi 3 lần thì 3 lần phôi ko giống nhau, nên em cũng chẳng biết là cái này phù hợp với đợt này, qua đợt sau có còn xài được hay ko. Cái này a cũng đã phát hiện ra, phôi Bình Dương đưa cho anh so với phôi của Hà Nội cũng bị lệch nhau. Nghĩa là mỗi đợt phôi in lại khác nhau và ko biết bao giờ mới kết thúc chuyện này. Anh có 2 cách: - Hệ thống cho phép Save as... file chứng chỉ thành Word trong đó mỗi trang là 1 chứng chỉ. Em Save lại sau đó căn trực tiếp trên word - Cách 2: mỗi tỉnh thực chất có 1 template, a sẽ gửi template cho từng tỉnh, em in thử template trên mẫu phôi (bản copy thôi nhé), sau đó gửi email file template lại a sẽ upload lên hệ thống. Nếu quá trình này phiền quá, anh sẽ làm tính năng để em tự upload file template lên ( chắc mất 1, 2 ngày mới xong). Nếu giải quyết được các vấn đề này thì công việc sẽ tiện cho em rất nhiều. Mới đầu năm mà em đã làm phiền anh nhiều. hì, cám ơn anh Cảm ơn các đóng góp qúy báu của em, chắc chắn các vấn đề này sẽ được giải quyết. Còn 1 ý nữa là lần ra Đà nẵng a có thấy bên em dùng phiếu trình duyệt. Thực tế, em có thể in trực tiếp phiếu này ra từ hệ thống luôn. Khi duyệt hồ sơ cán bộ chỉ cần ghi vào Phần kết quả và lý do thôi. Thành --- On *Sun, 17/2/13, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com*wrote: From: Ngoc Thanh Nguyen thanh.hispviet...@gmail.com Subject: Dùng tính năng lập danh sách làm việc để in các mẫu phiếu và in chứng chỉ To: Hien Nguyen dsthuhien_dan...@yahoo.com Cc: Hà Thái Sơn hathai_...@yahoo.com Date: Sunday, 17 February, 2013, 13:42 Hi Hiền, Ăn tết vui không em? Em có thể test giúp anh tính năng lập danh sách làm việc k? Hồ sơ của 1 đợt xét duyệt em bỏ hết vào 1 danh sách làm việc từ đó em in ra các phiếu Trình duyệt, phiếu trả kết quả, và cả in chứng chỉ luôn. Anh muốn thử trên hồ sơ thật của Đà Nẵng để rà soát lại thật kỹ trước khi đào tạo toàn quốc. Hiện a mới thử các tính năng này tại: Bình Dương và Hà Nội nên muốn có thêm Đà Nẵng. Nếu em thấy khó khăn anh sẽ cử người vào giúp làm trực tiếp luôn. Cảm ơn em Thành ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Dùng tính năng lập danh sách làm việc để in các mẫu phiếu và in chứng chỉ
Apologized. This email was wrongly sent to recipients. Thanh 2013/2/20 Ngoc Thanh Nguyen thanh.hispviet...@gmail.com Cảm ơn email của Hiền. Nếu các đơn vị khác cũng làm được như Đà nẵng thì phần mềm này chắc không cần phải training gì hết. Anh có cc cho các bạn trong nhóm hỗ trợ để có thêm kinh nghiệm khi hỗ trợ chỗ khác. Em xem trả lời của a phía dưới 2013/2/20 Hien Nguyen dsthuhien_dan...@yahoo.com hi anh Thanh cám ơn anh vì có thêm mục danh sách làm việc, nó tiện lợi hơn trước đây rất nhiều. tuy nhiên còn 1 xíu này em nhờ anh giúp, khi in danh sách ra file excel để lưu lại, em cần thêm 1 cột số điện ok, anh sẽ thêm cả 3 cột: số ĐT nhà, di động, và email luôn. thoại. ngoài ra việc in chứng chỉ bằng phần mềm em chưa thực hiện được do các vấn đề sau: 1. máy in dùng để in chứng chỉ đang nối với máy tính cũ, dùng internet rất chập chờn 2. máy tính mới em dùng để gửi mail cho anh đây nối với máy in ko chất lượng, em với anh IT ở sở ko kết nối máy in chứng chỉ với máy tính mới đc, ko biết anh có giúp em đc ko nếu kết nối không được có lẽ do driver, Windows XP hỗ trợ rất ít driver nhất là các thiết bị đời mới, có khi không hỗ trợ luôn. Microsoft cũng hết hỗ trợ WinXP, em cho a biết hiệu máy in đời máy in a tìm driver thử xem, nếu ko được chắc phải chuyển sang Win7 hoặc Wind8 3. mẫu in chứng chỉ theo phần mềm ko tương thích với phôi chứng chỉ hành nghề của sở em đc cấp. nếu em in ra thì chữ sẽ tràn ra ngoài. ngoài ra em nhận phôi 3 lần thì 3 lần phôi ko giống nhau, nên em cũng chẳng biết là cái này phù hợp với đợt này, qua đợt sau có còn xài được hay ko. Cái này a cũng đã phát hiện ra, phôi Bình Dương đưa cho anh so với phôi của Hà Nội cũng bị lệch nhau. Nghĩa là mỗi đợt phôi in lại khác nhau và ko biết bao giờ mới kết thúc chuyện này. Anh có 2 cách: - Hệ thống cho phép Save as... file chứng chỉ thành Word trong đó mỗi trang là 1 chứng chỉ. Em Save lại sau đó căn trực tiếp trên word - Cách 2: mỗi tỉnh thực chất có 1 template, a sẽ gửi template cho từng tỉnh, em in thử template trên mẫu phôi (bản copy thôi nhé), sau đó gửi email file template lại a sẽ upload lên hệ thống. Nếu quá trình này phiền quá, anh sẽ làm tính năng để em tự upload file template lên ( chắc mất 1, 2 ngày mới xong). Nếu giải quyết được các vấn đề này thì công việc sẽ tiện cho em rất nhiều. Mới đầu năm mà em đã làm phiền anh nhiều. hì, cám ơn anh Cảm ơn các đóng góp qúy báu của em, chắc chắn các vấn đề này sẽ được giải quyết. Còn 1 ý nữa là lần ra Đà nẵng a có thấy bên em dùng phiếu trình duyệt. Thực tế, em có thể in trực tiếp phiếu này ra từ hệ thống luôn. Khi duyệt hồ sơ cán bộ chỉ cần ghi vào Phần kết quả và lý do thôi. Thành --- On *Sun, 17/2/13, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com*wrote: From: Ngoc Thanh Nguyen thanh.hispviet...@gmail.com Subject: Dùng tính năng lập danh sách làm việc để in các mẫu phiếu và in chứng chỉ To: Hien Nguyen dsthuhien_dan...@yahoo.com Cc: Hà Thái Sơn hathai_...@yahoo.com Date: Sunday, 17 February, 2013, 13:42 Hi Hiền, Ăn tết vui không em? Em có thể test giúp anh tính năng lập danh sách làm việc k? Hồ sơ của 1 đợt xét duyệt em bỏ hết vào 1 danh sách làm việc từ đó em in ra các phiếu Trình duyệt, phiếu trả kết quả, và cả in chứng chỉ luôn. Anh muốn thử trên hồ sơ thật của Đà Nẵng để rà soát lại thật kỹ trước khi đào tạo toàn quốc. Hiện a mới thử các tính năng này tại: Bình Dương và Hà Nội nên muốn có thêm Đà Nẵng. Nếu em thấy khó khăn anh sẽ cử người vào giúp làm trực tiếp luôn. Cảm ơn em Thành ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] dhis security issue
Hi all, Sorry if this issue is irrelevant but when I tried to insert something malicious script to dhis2 field, I got it stored, like this: [image: Inline image 1] It means that data are not filtered at all. In theory, it has a risk of XSS attack. How do we prevent that? Thanh image.png___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] dhis security issue
No, I don't see it. But even by escaping the output, will it be completely secured? Thanh On Sat, Jan 26, 2013 at 11:42 PM, Morten Olav Hansen morte...@gmail.comwrote: Everything coming out of DHIS should be escaped. Are you saying that you see the alert box where you can see the name? -- Morten On Sat, Jan 26, 2013 at 5:37 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi all, Sorry if this issue is irrelevant but when I tried to insert something malicious script to dhis2 field, I got it stored, like this: [image: Inline image 1] It means that data are not filtered at all. In theory, it has a risk of XSS attack. How do we prevent that? Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp image.png___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] DHIS2 no longer support mysql?
When trying the latest trunk version of dhis2 with mysql database, there were a number of error relating to cache. Also, the start up routine has a bug in creating minmaxdataelement table because the name was misspelled. Therefore, no data value is saved after being entered. So it seems the claim dhis2: DBMS neutral is no longer valid? t ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Can datamart console works with a proxy?
I tried to run it behind a proxy, it could not connect to the remote dhis2. I think proxy is the problem? Will we support proxy in this app? T ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Default font-family in dhis2
LiberationSansRegular is too complex to be a default font in dhis2 In the case of Vietnamese it looks even more problemtatic. I suggeest we use simple font like Tahoma Arial or Sanserif ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] New menu layout
hi all The current menu system with only 2 big categories: maintenance and services seem to be not attractive for data entry clerks who comprise majority of user base. After logging in, only services menu with data entry link are available. Also, when they want to enter data, all datasets are hidden behind a combobox. Why don't we have a front page which shows all the available functionality to them. This front page can have a style of Adroid desktop or Window 7 (big icons, hover). I think I will implement this feature for Vietnam hospital project (as requested by MOH) in a module but I need inputs from you so that the module can benefit other settings. Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] migrate from mysql to postgresql
I have a dhis2 db on mysql how to move it to postgresql smoothly? Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Problem of table minmaxdataelement does not exist with mysql db
hi I experienced this problem when using mysql, even with fresh one. But it disappears in postgres. I think there will be a rountine update which is not compatiable with mysql This was also reported by someone from Kosovo. I share so that other people can avoid and dev can fix Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Orgunit attribute can not scope with large number of attributes
Hi all I tried to put about 30 extra attributes to orgunit. The number of orgunit is 1000. So totally, there are 3 orgunitattrvalue but dhis2 takes lots of time to be logged. Loading and caching orgunit tree also takes infinitely. I suppose orgunit attribute values are cached along with orgunit tree? Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] how to flush all the caches
Hi all, I tried to delete orgunit cache in Maintenance/Data admin/Clear cache and also in browser/clear cache but the orgunit tree in OrgUnit Maintence did not reflect the change. So what is the most thorough method to flush dhis2 cache? T ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] trailer about the superior of Java platform which is used to make dhis2
I found this funny trailer http://jz10.java.no/java-4-ever-trailer.html. It is great that they speak Norwegian. Have a nice weekend. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Proposal on applying systematic testing for dhis2
Hi Bob, Thanks for the comments. I have some replies below. On Thu, Jun 3, 2010 at 3:40 PM, Bob Jolliffe bobjolli...@gmail.com wrote: Hi Thanh We did receive it and i had a quick read through. Its great to see work being done on testing. we need lots of it. Two comments/questions (to prove that I read it!): 1. I am not entirely convinced by your replacement of TSL with Excel. TSL is a formal grammar. It has limitations which have been described elsewhere but I don't think that the typing of '[' has ever really featured highly :-) I think you may be confusing the specification with the authoring tool when you say that your revised TSL is to use excel. So on the theory side I'd be a bit uncomfortable with this aspect of your paper. (BTW did you look at schematron as an alternative grammar for expressing tests? I know one of the criticisms of TSL is that it does not allow for a very literate human-readable approach. schematron allows for a human readable assertions and - though xpath is usually used for schema validation - tests can be implemented in any language. Perhaps an off-the wall thought ...) TSL in my paper is about the specification developed by Ostrand 1988. They developed this specification within the method they called Category Partition - a combination between Equivalence Partition and Boundary Analysis. This specification as I feel is a bit complicated because it required typing [ or ] character. My revision aims to save time for typing this and also make it readable for a computer program. I selected Excel because of its popularity and easy-to-use. CPM is the most popular techniques in black box testing. Cause graph effect is another method but it requires to draw graphical diagram so it seems impossible in practice. XPath or Schematron seems to be out of the scope of CPM. 2. I am not very clear - perhaps didn't read carefully enough - how you generate the actual tests from the source document. It looks to me that it requires quite a significant understanding of the application , the classes etc. I guess this is where understanding the grammar, if any, is important. Could you generate selenium tests from it? This strikes me as the most black-box kind of testing. No, CPM can not generate actual test cases and test data. It can generate test frame (a combination of different input values). Tester has to provide the test data, hence, to build test case. I find it hard to have any automation tool to generate test cases (with test data) automatically. And my tool just does a simple job: 1) read the Excel file containing category and partition, 2) combination based on their properties and constraints, 3) and build the test frames based on the combination. How easy would it be to use your tool to do wider test coverage of dhis? Would be a good thing. Here we come with the test coverage. Black box is different from white box. It can not produce any code coverage (statement, block, branch, predicate etc). Not at all. It can not be used with mutation. It seems there is no way to assess whether a test set is adequate - good enough. Any one have better idea can correct me on this. But I am very confident that if we follow the CPM strictly, together with the support from my tool, i.e. revise the category and partition building back and forth, we can end up with a 100% test coverage. The challenge is, for web layer of DHIS2, we could not apply white box testing. This is partial reason why there is no unit testing for action class. It is so difficult to mock all the session and interceptor at least in DHIS2. We have only one choice, that is black box testing. And so far, we have not done any systematic testing on web modules. Our current approach is more ad-hoc. More input needed. Thanh Cheers Bob On 2 June 2010 12:03, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi all, this is a project I did for the testing course this semester. I hope it could shed a light for testing aspect of dhis2. Notice: the case was built based on the assumption that the system specification requires name of orgunit, group, and group set to be have between 2-255 characters. Though dhis2 implemented it with text field max char = 160. Thanh ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] Fwd: Proposal on applying systematic testing for dhis2
Hi Bob, Thanks for the feedbacks written in your busy time :-). But I have a small comments on Selenium. Please read below. On Thu, Jun 3, 2010 at 5:17 PM, Bob Jolliffe bobjolli...@gmail.com wrote: Hi On 3 June 2010 10:50, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi Bob, Thanks for the comments. I have some replies below. On Thu, Jun 3, 2010 at 3:40 PM, Bob Jolliffe bobjolli...@gmail.com wrote: Hi Thanh We did receive it and i had a quick read through. Its great to see work being done on testing. we need lots of it. Two comments/questions (to prove that I read it!): 1. I am not entirely convinced by your replacement of TSL with Excel. TSL is a formal grammar. It has limitations which have been described elsewhere but I don't think that the typing of '[' has ever really featured highly :-) I think you may be confusing the specification with the authoring tool when you say that your revised TSL is to use excel. So on the theory side I'd be a bit uncomfortable with this aspect of your paper. (BTW did you look at schematron as an alternative grammar for expressing tests? I know one of the criticisms of TSL is that it does not allow for a very literate human-readable approach. schematron allows for a human readable assertions and - though xpath is usually used for schema validation - tests can be implemented in any language. Perhaps an off-the wall thought ...) TSL in my paper is about the specification developed by Ostrand 1988. They developed this specification within the method they called Category Partition - a combination between Equivalence Partition and Boundary Analysis. This specification as I feel is a bit complicated because it required typing [ or ] character. My revision aims to save time for typing this and also make it readable for a computer program. I selected Excel because of its popularity and easy-to-use. Yes I understand all that. So you have selected excel as a tool for authoring your test cases. Thats fine and I'm sure its a good tool for the job for the reasons you describe. The point is that TSL is a language for expressing them. What do you express? An excel file. I really don't think thats the the same thing at all. I guess what is missing is some way to describe those spreadsheets of yours so that they can be considered as a sort of language like TSL. CPM is the most popular techniques in black box testing. Cause graph effect is another method but it requires to draw graphical diagram so it seems impossible in practice. XPath or Schematron seems to be out of the scope of CPM. Not at all. See http://www.computer.org/portal/web/csdl/doi/10.1109/ICSEA.2006.9 for example. I agree XPath is well out of scope, but schematron is not bound to use XPath. Just so happens that 99% of the time it does because it is primarily used for testing xml validity. But I guess there is nothing in principle preventing the actual tests to be implemented as say javascript, or even selenium scripts. 2. I am not very clear - perhaps didn't read carefully enough - how you generate the actual tests from the source document. It looks to me that it requires quite a significant understanding of the application , the classes etc. I guess this is where understanding the grammar, if any, is important. Could you generate selenium tests from it? This strikes me as the most black-box kind of testing. No, CPM can not generate actual test cases and test data. It can generate test frame (a combination of different input values). Tester has to provide the test data, hence, to build test case. I find it hard to have any automation tool to generate test cases (with test data) automatically. And my tool just does a simple job: 1) read the Excel file containing category and partition, 2) combination based on their properties and constraints, 3) and build the test frames based on the combination. OK. Now I understand. How easy would it be to use your tool to do wider test coverage of dhis? Would be a good thing. Here we come with the test coverage. Black box is different from white box. It can not produce any code coverage (statement, block, branch, predicate etc). Not at all. It can not be used with mutation. It seems there is no way to assess whether a test set is adequate - good enough. Any one have better idea can correct me on this. But I am very confident that if we follow the CPM strictly, together with the support from my tool, i.e. revise the category and partition building back and forth, we can end up with a 100% test coverage. Sounds good. The challenge is, for web layer of DHIS2, we could not apply white box testing. This is partial reason why there is no unit testing for action class. It is so difficult to mock all the session and interceptor at least in DHIS2. We have only one choice, that is black box testing. And so far, we have not done any systematic testing on web modules
[Dhis2-devs] Please ignore this message
Testing whether it response ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Current and future features
On Thu, Mar 11, 2010 at 6:00 PM, Knut Staring knu...@gmail.com wrote: Hello everyone, More work needed: 3. Ability to accept data exported from an electronic data system or perform an extraction therefrom 4. Support for the following types of indicators: count, ratio, %, population rate, $, national currency, yes/no/unknown 5. Hierarchical indicator definition via inheritance or import at (minimally) international, national and local level 7. Ability to aggregate indicators by donor, government agency, partner, sub-partner, funding source, activity type, program area 12. Versioning of data (knowledge of latest date an element of an aggregate was updated), release status (preliminary, validated, released, corrected) 14. Suppression of small counts in output, smudging of geography to prevent identification of individuals 15. Data interchange (especially via IXF3) 16. Target, revised target and actual data (provides budget capability) 17. Audit trail 25. Highly responsive data entry, moderately reponsive report generation 26. System monitoring reports (timeliness, completeness) 27. Ability to store and forward text or attachments as identified items (narrative reporting) 28. Ability to add adjustments to indicator values and their justifications at each hierarchical level and to specify their allocation among disaggregation categories 30. Reliable, ongoing customer support, including training, software and documentation updates, etc Should we have a short session maybe half day discussing about the dhis2 patient module? Thanh ___ Mailing list: https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs More help : https://help.launchpad.net/ListHelp -- Best regards, Thanh --- Center for HIS development 957, 3/2 st., Dist 11, Hochiminh city Tel: 08-956 0150 Cell: 098 221 8623 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Greetings + new DHIS patient module
On Thu, Mar 4, 2010 at 12:11 AM, Bob Jolliffe bobjolli...@gmail.com wrote: Hi John On 3 March 2010 15:20, John lewis johnlewis.h...@gmail.com wrote: Hi bob, the system generated ID is to one way to identify the case or person. using orgunit you mean the code for that organization unit. In india they have generated a 16 digit ID based on Country, Province,District,Sub-district and facility. but the problem with this is what happen if new district or province is created. In norway the personal id number is ddmmyy+sex+random number. I thougth we cloud use the same but increasing the random number to avoid the duplicate. I think this is a national id number. In Norway they do indeed use the national ID number as a patient ID. And, believe it or not, Norway does not follow best practice in this area. They do it probably because it was convenient and they started doing it at a time before anyone really took much time to think about it. The hazard of early adoption in the information age. They are not the only country which now finds itself in this position. I've mentioned a few times on this list that national identifiers are not always suitable for use as patient identifiers. That they are frequently coerced for this use is now broadly understood to be a common but bad practice, largely because the requirements of national ids are not generally the same as requirements for patient ids. There are a lot of references out there on what these requirements are - I think myself and Saptarshi have provided some links to literature on the subject. Just googled this one fresh for example ( http://books.google.com/books?id=X0JeKx8-J0cCpg=PA59lpg=PA59dq=norway+patient+identifiersource=blots=6C8eZlwxLbsig=zTY4mpmxpNtvGGz-hssv3KVEQh8hl=enei=F46OS7KHEJO7jAfZocDpAwsa=Xoi=book_resultct=resultresnum=5ved=0CB8Q6AEwBA ) coz it mentions Norway - what a horrible url - and not a great article. You can I'm sure access better quality stuff through the university. In the case of India, where they are now designing a national ID from scratch, they might have taken this issue into account - ie they have the benefit of hindsight that the identifier might (read it always happens!) be used for many purposes beyond what may have been its original intent. So the ID could be useful if encoded on a card or something, but the downside being that very few people are going to memorize it if it has many random digits. Alphanumerics can help keep it shorter. I'm not sure if I get your concern about provinces and districts changing etc. Using a similar scheme but based on facility+unique string a patient would only really need to commit to memory the unique string part in 95% of cases. She would only need the full number with prefix part when visiting a different facility at which point it would be useful to have the full number on a card, file or what have you. But even then, if she remembered the facility that she got it from, it could be reasonably reconstructed. I can sympathize with the desire for simplicity and I think we should strive for a simple solution. But given that is widely accepted that encoding the birthdate and gender in a patient id is a bad practice I don't think it is wise to roll-out a new personal identification system like this. To me it might indicate a certain amateurism and lack of familiarity with the literature which could reflect badly on the project. Particularly as you are undergoing your security review. I also do know that the openmrs guys have really put a lot of thought into this. So my warning would be if you go ahead with birthdates and gender you should be prepared to be hammered from all sides. Cheers Bob I think we can take a look at here http://en.wikipedia.org/wiki/National_identification_numberto see how countries in the world dealing with this problem. While putting birthdate in the ID is considered as a violence of privacy, most of countries use it in their national ID systems. They might do thing wrong? ID system, as I perceive, is very similar to a infrastructure with its installed based. Addressing it is not the problem of good or bad but what the current situation is and how to build upon that, I think. Thanh And its also useful that the person dont have to remember all the 16 or 14 digit number. for the sake of simplicity we used this method. John On Wed, Mar 3, 2010 at 1:35 PM, Bob Jolliffe bobjolli...@gmail.com wrote: Hi On 3 March 2010 12:20, Viet Nguyen phamquocv...@gmail.com wrote: Hi, Just a quick update about Patient registration form functionality : * Check duplicate : This function allow user to check for existing patient base on : name , birthdate, age, gender If there is duplicate patient, a pop up will be showed, with the list of all the duplicated patients. From this pop up, user can have two options : Continue
Re: [Dhis2-devs] Mobile data entry for dhis2
On Fri, Sep 25, 2009 at 6:20 PM, Knut Staring knu...@gmail.com wrote: http://bazaar.launchpad.net/~dhis2-devs-core/dhis2/trunk/files/head:/local/in/DHISMIDP/src/org/hispindia/mobile/http://bazaar.launchpad.net/%7Edhis2-devs-core/dhis2/trunk/files/head:/local/in/DHISMIDP/src/org/hispindia/mobile/ Knut, The Indian solution is j2me, java on mobile. What I mean is WAP, directly entering dhis2 in mobile without installation. Thanh On Fri, Sep 25, 2009 at 1:05 PM, Ngoc Thanh Nguyen thanh.hispviet...@gmail.com wrote: Hi all, A simple, friendly mobile data entry for dhis2 would be useful as - grps connection in developing countries are good enough - 3g connection becomes real soon end of this year. Thanh ___ Mailing list: https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs More help : https://help.launchpad.net/ListHelp -- Cheers, Knut Staring -- Best regards, Thanh --- Center for HIS development 957, 3/2 st., Dist 11, Hochiminh city Tel: 08-956 0150 Cell: 098 221 8623 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] DHIS OpenMRS integration
Hi all, I have been following all the discussions. The key issue is how to make OpenMRS and DHIS2 talk to each other. This is not about what standards should be used but THE DESIGN of AN interpreter (translator). I think we could discuss on how to design this mapping. The key element in DHIS2 is the Dataelement and Value (often a number). In OpenMRS, Concept is something similar to Dataelement. The answer for concept (Value) is other concept. The Period in DHIS2 shares similarity with Encounter date time. The Orgunit in DHIS2 is similar with Patient and location in OpenMRS. Here are some examples of mapping: 1. Simple mapping with only *encounter* In OpenMRS, for outpatient department, every day many patients come to a clinic (hospital) to have check up. This check up event will be stored as an encounter with date, time. For DHIS2, one of the data element could be: Number of patients come to the clinic this month? So how to map? select count(*) from encounter where encounter.date between FirstDateOfThisMonth and LastDateOfThisMonth 2. Mapping with *Observation and concept* Ok, after the patient is registered, he come to see doctor in a check up room. The doctor will give diagnosis saying that he is infected by tuberculosis or malaria or any kinds of disease. In OpenMRS, the diagnosis is stored as an observation with the Concept name is Diagnosis. The answer for this concept is also a list of concepts (ICD 10). For DHIS2, many data element could be come from this scenario: - How many [TB] patient in a month? - How many [Malaria] patient in a month? - Up to some hundreds of data elements. . So how to map? select count(*) from obs where answer_concept is [TB] and date between FirstDateOfThisMonth and LastDateOfThisMonth 3. Break out by [sex] and [age]: The query is the same but with a little modification select count(*) from encounter where encounter.date between FirstDateOfThisMonth and LastDateOfThisMonth -- select count(*) from encounter inner join patient on encounter.patientid = patient.id where encounter.date between FirstDateOfThisMonth and LastDateOfThisMonth AND patient.age between [startage] and [endage] and patient.sex = [sex] 4. Other queries: Statistical reports require more than just clinical data. This requirements range from human resources, number of medical lab machines, financial management etc. And if there are no such things in OpenMRS, DHIS2 must pull data from other sources. Regards, Thanh On Mon, Aug 3, 2009 at 8:02 PM, Murodullo Latifov murodlati...@yahoo.comwrote: Hi, Discussion was mainly around IXF/DXF standards for representing data, which I ignored on my initial implementation, and likely will do so for now. I am concentrated to make systems talk, after we can think of standards. This was agreement with OpenMRS people, who insisted on standards, but after long debates I made them agree to go my way. I am actually using XML for data exchange, which is standard in a sense. Will come back to discussions while progress is made. This was not really my impression. There was a breakout discussion of me, Ola, Murod and Paul (from OpenMRS). Maybe there were long debates afterwards which I missed. Anyway the prevailing view was that before we look at a new ad hoc way of doing things we need to be sure that there is not an existing standard way which is adequate. There was nobody who thought creating a new xml representation just for this openmrs-dhis integration is a good idea. Unfortunately Ola and I also had not seen Murod's work in advance so it was difficult to present a comon dhis view. Murod can you share more of what you have done to the wider group? Main issue was and is to map DHIS data to OMRS data. None of listed standards currently provide it. There should be a medium to dictate standard and uniform keys, names, and other attributes for both systems, from all available standards only SDMX-HD has some sample data and is good candidate to provide such service. Parsing is not an issue, validity of content is. That is where systems talk. This standardization is multy step and long process. omrs should follow ICD10 and dhis - SDMX-HD, there should be mapping between SDMX-HD and ICD10. This is my view of standards and might not be correct. Project I created is intended to link two systems in closest possible way, not to build standards or discuss standards. Taking this into account the rest of messages from this line onward are void. When there is proper standard and implementation instructions we can easily shift. In terms of discussion, the following options were considered regrading data format: 1. SDMX_HD - Paul had not been aware of the deficiencies which I had pointed out. He was also at pains to insist that OpenMRS was not committed to this format yet, but like us, felt that it is better to align with a WHO effort if is feasible. If its not, he's happy not to go that way. I asked him to get a
Re: [Dhis2-devs] Asking a report on a birt server
On Mon, May 25, 2009 at 3:04 AM, Orvalho Joaquim Augusto orvaq...@gmail.com wrote: Thanks! This is on discussion here. And for now it sounds too bad. For now it seems that we will have birt on p servers only. Caveman I think it is possible. - In BIRT report, you can set the report url refer to any machines (i.e via IP address or hostname) - You can put report.rpt file in any machines, you access them via http:* //sitePrefix*/birt-viewer/ frameset?*option1*=*value1*;*option2*=*value2;... Thanh* Jason Pickering wrote: Not entirely sure I understand your architecture, but I assuming that all (p) servers will be pointed to the same central database (c). If you design your BIRT report to point to the (c) server, it will make no difference whether the report is run from the (p) servers, so long as the data source points to the (c) server. If you are looking at doing disconnected data entry, as opposed to a central database, you will need to collate all of your data into the central server through import/export. However, the report should still function in the same way. Just be sure that you design the BIRT report with a data source to the actual IP address of the server, and not the localhost address. Obviously, the report will need to be distributed to the (p) servers, but uploaded without a datasource, as this will need to be specified in the report itself. Otherwise, perhaps you can just host the report on the (c) server and have all the (p) servers run it from there by logging in and running the report remotely. Hmm, lots of c's and p's there, but this should certainly be doable. Regards, Jason On Sun, May 24, 2009 at 7:55 PM, Orvalho Joaquim Augusto orvaq...@gmail.com wrote: We plan to have a strange situation. We will have at least 5 servers (p) for dhis2 data entry. All that data will be agregated to a central server (c) where will have central reports. The question: How can I make the dhis on p server to use the birt on c server? It is just an ideia so far. So comments to make it better would be good. Thanks Caveman ___ Mailing list: https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs More help : https://help.launchpad.net/ListHelp -- Best regards, Thanh --- Center for HIS development 957, 3/2 st., Dist 11, Hochiminh city Tel: 08-956 0150 Cell: 098 221 8623 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] Global ranges
On Wed, May 20, 2009 at 3:13 AM, Jason Pickering jason.p.picker...@gmail.com wrote: Would like to hear what the devs have to say, but maybe something like... 1) Delete the primary key minmaxdataelementid 2) Execute INSERT INTO minmaxdataelement SELECT a.organisationunitid, b.dataelementid, 0 as minvalue, 99 as maxvalue, 'TRUE'::boolean as generated FROM (SELECT DISTINCT organisationunitid FROM organisationunit) a CROSS JOIN (SELECT DISTINCT dataelementid FROM dataelement) b Knut said that that the DISTINCT elements should probably not be there, but just in case... 3) Recreate the primary key minmaxdatelementid with a serial datatype to give you a serial list of integers in this field. 4) Remove the default value of the primary key and set it back to a plain integer data type. 5) Add the primary key constraint again to the minmaxdataelemntid. This procedure will not take into account particular elements that only certain data organisationunits should be submitting. So there would likely be many min-max elements that would be populated into this table that would actually not be necessary. An example would be that districts that do not report on a particular dataelement should not have a restriction on the min-max value if the actual reporting is done at a lower level. Seems like a hack to me, but perhaps it might work. It might be better to select from the organisationunitstructure table, for a particular level, instead of the entire organisationunit table. I would make a backup of the DB obviously before I tried any of this. :) Regards, JPP Hi Jason, You may compare to this Okies, why dont you try this: - if you want all dataelements have ranges insert into minmaxdataelement(sourceid, dataelementid, minvalue, maxvalue) select organisationunitid, dataelementid, 0, 99 from organisationunit, dataelement - if you only want those dataelements belonging to datasets assigned to certain orgunit insert into minmaxdataelement(sourceid, dataelementid, minvalue, maxvalue) select o.organisationunitid, dm.dataelementid, 0, 99 from organisationunit o inner join datasetsource ds on o.organisationunitid = ds.sourceid inner join datasetmembers dm on dm.datasetid = ds.datasetid remember to truncate minmaxdataelement table before inserting. Thanh On Tue, May 19, 2009 at 5:06 PM, joha...@ifi.uio.no wrote: Hi, In Sierra Leone, none of the orgunits have defined min-max ranges yet, and the historical data is too poor to be used for calculation of such ranges yet. Still, there have been some instances of really bad typos, such as 775 instead of 75. Most entries (maybe around 98%) are below 100, so as a temporary shield we would like to set default ranges as 0-99 (to catch all three-digit entries). Any clue on how to do this? Would running a query directly on the database solve it, and what would that query look like? (sorry, but not good at SQL) Johan ___ Mailing list: https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devshttps://launchpad.net/%7Edhis2-devs More help : https://help.launchpad.net/ListHelp -- Best regards, Thanh --- Center for HIS development 957, 3/2 st., Dist 11, Hochiminh city Tel: 08-956 0150 Cell: 098 221 8623 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] vietnam boost ICT for health
It was translated by G http://translate.google.com/translate?prev=hphl=enu=http%3A%2F%2Fvietnamnet.vn%2Fcntt%2F2009%2F03%2F835589%2Fsl=vitl=en and Misnistry of ICT recruits more staffs for WITFOR 2009 in Vietnam http://translate.google.com/translate?prev=hphl=enu=http%3A%2F%2Fvietnamnet.vn%2Fcntt%2F2009%2F03%2F835605%2Fsl=vitl=en -- Best regards, Thanh --- Center for HIS development 957, 3/2 st., Dist 11, Hochiminh city Tel: 08-956 0150 Cell: 098 221 8623 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp