view · edit · sidebar · attach · print · history

< Niklaus.20171024-reparse-patinfo | Index | Niklaus.20170927-rapflag-bugs >>

20171023-oddb2xml-mutagrip

Summary

  • Fix mutagrip problem in oddb2xml
  • Fix missing substances (eg. shire or Subcuvia)
  • Keep in Mind

Commits

Index

Zeno remarked that when calling https://ch.oddb.org/de/gcc/search/zone/drugs/search_query/shire/search_type/st_company?#best_result there were missing substances, e.g for Subcuvia. The test result is similar when visiting https://ch.oddb.org/de/gcc/search/zone/drugs/search_query/Subcuvia/search_type/st_sequence#best_result

The https://ch.oddb.org/de/gcc/drug/reg/58749/seq/01 shows that we could not determine the correct substances for the composition proteina 160 mg cum immunoglobulinum humanum normale min. 95 %, glycinum, natrii chloridum, aqua ad iniectabilia, q.s. ad solutionem pro 1 ml.. How many of these cases to we have?

bin/admin shows

ch.oddb> active_sequences.size
-> 11159
ch.oddb> $problems = active_sequences.find_all{|seq| seq.active_agents.size == 0}
-> Array
ch.oddb> $problems.size
-> 1277
ch.oddb> $problems.collect{ |x| x.iksnr}.uniq.size
-> 864
ch.oddb> active_sequences.collect{ |x| x.iksnr}.uniq.size
-> 6784
ch.oddb> $problems.collect{ |x| x.compositions && x.compositions.first && x.compositions.first.to_s}.compact.sort.uniq.size
-> 169
File.open('calc_problems.txt', 'w') {|f| f.puts $problems.collect{ |x| x.compositions && x.compositions.first && x.compositions.first.to_s}.compact.sort.uniq }
-> 

Therefore we can conclude that over 12% of the registrations do not have active_agents. But we have only about 170 compositions where our algorithm fails. See Attach:calc_problems.txt

Looking at the composition of 58749/01 we see that the substance given ('immunoglobulinum humanum normale') is not as expected at the beginning but somewhere inside the composition text ('proteina 160 mg cum immunoglobulinum humanum normale min. 95 %, glycinum, natrii chloridum, aqua ad iniectabilia, q.s. ad solutionem pro 1 ml.')

Other registrations contain also the keyword 'cum', eg. 62770, 60025. But there the parsing does not have problems. Other common useages look like cum liberatione 12.5 g/h (53904)

Reparsing failes, because somehow the patinfo of the first package of the registration 47909 is converted into a PatinfoDocument. Verified with bin/admin, that this is indeed an effect of the reparsing.

Fix mutagrip problem in oddb2xml

Mutagrip Inj Susp 2017/2018 Fertspr 0.5ml (<PHAR>6988277</PHAR>) is in oddb_article.xml marked as inactive. This product has no GTIN in the SL only a 5 digit IKSNR,

Adding some debug code and breaking on this product. Problem is, that the IKSNR is 373 and therefore the @SwissmedicNo8 should be '00373015', but the leading 0 got truncated, which resulted in @SwissmedicNo8 '373015'. This problems it probably present since the Packungen.xlsx changed the format of the column A to be an integer and no longer a string.

But we have an additional problem. In the BAG-Preparation.XML we have only the package 015 (which is for the vaccine 2016/2017 whereas in the Packungen.xlsx we have have packages 015 AND 016 with 1, resp. 10 injections.

It is easy to find the GTINs of the missing element in the @articles (from refdata). But the @items (read from Preparations) have a very different format, therefore it is quite some work to transform it. Also field like last_change are only present in refdata.

Also the SALECD field is still emitted as inactive. Must debug another time.

The package 015 is only present in Preparations.xml (BAG) and Packungen.xlsx (Swissmedic), but not in the refdata_Pharma.xml. To build the articles oddb2xml only considered the items from refdata. Therefore I must add there also the data from the Preparations.xml.

Pushed commits

Release oddb2xml gem 2.4.4.

view · edit · sidebar · attach · print · history
Page last modified on October 23, 2017, at 05:02 PM