ramaze.ch.oddb.org 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (286) hide show
  1. data/History.txt +6 -0
  2. data/LICENSE +339 -0
  3. data/Manifest.txt +285 -0
  4. data/README.txt +45 -0
  5. data/Rakefile +28 -0
  6. data/bin/admin +69 -0
  7. data/bin/exportd +63 -0
  8. data/bin/migrate +461 -0
  9. data/bin/oddbd +62 -0
  10. data/data/fulltext/data/dicts/french/fulltext.aff +1057 -0
  11. data/data/fulltext/data/dicts/french/fulltext.dict +91189 -0
  12. data/data/fulltext/data/dicts/french/fulltext.stop +135 -0
  13. data/data/fulltext/data/dicts/german/fulltext.aff +1233 -0
  14. data/data/fulltext/data/dicts/german/fulltext.dict +287574 -0
  15. data/data/fulltext/data/dicts/german/fulltext.stop +133 -0
  16. data/data/fulltext/data/german_compound/README +15 -0
  17. data/data/fulltext/data/german_compound/compound.pl +63 -0
  18. data/data/fulltext/data/german_compound/german.stop +20 -0
  19. data/data/fulltext/data/ispell-german-compound.tar.gz +0 -0
  20. data/data/fulltext/redist/dict_french/Makefile +12 -0
  21. data/data/fulltext/redist/dict_french/README.french +1 -0
  22. data/data/fulltext/redist/dict_french/dict_french.sql.in +7 -0
  23. data/data/fulltext/redist/dict_french/dict_snowball.c +56 -0
  24. data/data/fulltext/redist/dict_french/french_stem.c +1222 -0
  25. data/data/fulltext/redist/dict_french/french_stem.h +16 -0
  26. data/data/fulltext/redist/dict_french/subinclude.h +2 -0
  27. data/data/fulltext/redist/dict_german/Makefile +12 -0
  28. data/data/fulltext/redist/dict_german/README.german +1 -0
  29. data/data/fulltext/redist/dict_german/dict_german.sql.in +7 -0
  30. data/data/fulltext/redist/dict_german/dict_snowball.c +56 -0
  31. data/data/fulltext/redist/dict_german/german_stem.c +527 -0
  32. data/data/fulltext/redist/dict_german/german_stem.h +16 -0
  33. data/data/fulltext/redist/dict_german/subinclude.h +1 -0
  34. data/data/fulltext/redist/french_stem.c +1222 -0
  35. data/data/fulltext/redist/french_stem.h +16 -0
  36. data/data/fulltext/redist/german_stem.c +527 -0
  37. data/data/fulltext/redist/german_stem.h +16 -0
  38. data/lib/fixes/ruby19.rb +21 -0
  39. data/lib/fixes/selenium.rb +20 -0
  40. data/lib/fixes/singular.rb +8 -0
  41. data/lib/fixes/yaml.rb +13 -0
  42. data/lib/oddb.rb +11 -0
  43. data/lib/oddb/business/company.rb +18 -0
  44. data/lib/oddb/business/invoice.rb +75 -0
  45. data/lib/oddb/business/price.rb +60 -0
  46. data/lib/oddb/config.rb +73 -0
  47. data/lib/oddb/drugs.rb +16 -0
  48. data/lib/oddb/drugs/active_agent.rb +37 -0
  49. data/lib/oddb/drugs/atc.rb +53 -0
  50. data/lib/oddb/drugs/composition.rb +41 -0
  51. data/lib/oddb/drugs/ddd.rb +24 -0
  52. data/lib/oddb/drugs/dose.rb +107 -0
  53. data/lib/oddb/drugs/galenic_form.rb +21 -0
  54. data/lib/oddb/drugs/galenic_group.rb +17 -0
  55. data/lib/oddb/drugs/package.rb +87 -0
  56. data/lib/oddb/drugs/part.rb +56 -0
  57. data/lib/oddb/drugs/product.rb +25 -0
  58. data/lib/oddb/drugs/sequence.rb +61 -0
  59. data/lib/oddb/drugs/substance.rb +31 -0
  60. data/lib/oddb/drugs/substance_group.rb +13 -0
  61. data/lib/oddb/drugs/unit.rb +12 -0
  62. data/lib/oddb/export.rb +4 -0
  63. data/lib/oddb/export/csv.rb +89 -0
  64. data/lib/oddb/export/l10n_sessions.rb +30 -0
  65. data/lib/oddb/export/rss.rb +44 -0
  66. data/lib/oddb/export/server.rb +58 -0
  67. data/lib/oddb/export/xls.rb +119 -0
  68. data/lib/oddb/export/yaml.rb +123 -0
  69. data/lib/oddb/html/state/drugs/admin/package.rb +189 -0
  70. data/lib/oddb/html/state/drugs/admin/product.rb +56 -0
  71. data/lib/oddb/html/state/drugs/admin/sequence.rb +259 -0
  72. data/lib/oddb/html/state/drugs/ajax/explain_ddd_price.rb +19 -0
  73. data/lib/oddb/html/state/drugs/ajax/explain_price.rb +19 -0
  74. data/lib/oddb/html/state/drugs/ajax/global.rb +18 -0
  75. data/lib/oddb/html/state/drugs/ajax/package_infos.rb +19 -0
  76. data/lib/oddb/html/state/drugs/ajax/remote_infos.rb +19 -0
  77. data/lib/oddb/html/state/drugs/atc_browser.rb +39 -0
  78. data/lib/oddb/html/state/drugs/atc_guidelines.rb +21 -0
  79. data/lib/oddb/html/state/drugs/compare.rb +52 -0
  80. data/lib/oddb/html/state/drugs/download_export.rb +18 -0
  81. data/lib/oddb/html/state/drugs/fachinfo.rb +21 -0
  82. data/lib/oddb/html/state/drugs/feedback.rb +94 -0
  83. data/lib/oddb/html/state/drugs/global.rb +266 -0
  84. data/lib/oddb/html/state/drugs/init.rb +18 -0
  85. data/lib/oddb/html/state/drugs/login.rb +17 -0
  86. data/lib/oddb/html/state/drugs/package.rb +32 -0
  87. data/lib/oddb/html/state/drugs/patinfo.rb +21 -0
  88. data/lib/oddb/html/state/drugs/products.rb +51 -0
  89. data/lib/oddb/html/state/drugs/result.rb +125 -0
  90. data/lib/oddb/html/state/global.rb +165 -0
  91. data/lib/oddb/html/state/global_predefine.rb +17 -0
  92. data/lib/oddb/html/state/limit.rb +17 -0
  93. data/lib/oddb/html/state/login.rb +56 -0
  94. data/lib/oddb/html/state/paypal/checkout.rb +130 -0
  95. data/lib/oddb/html/state/paypal/collect.rb +46 -0
  96. data/lib/oddb/html/state/paypal/redirect.rb +18 -0
  97. data/lib/oddb/html/state/register_export.rb +38 -0
  98. data/lib/oddb/html/state/register_poweruser.rb +17 -0
  99. data/lib/oddb/html/state/viral/admin.rb +76 -0
  100. data/lib/oddb/html/state/viral/poweruser.rb +16 -0
  101. data/lib/oddb/html/util/annotated_list.rb +39 -0
  102. data/lib/oddb/html/util/know_it_all.rb +28 -0
  103. data/lib/oddb/html/util/known_user.rb +55 -0
  104. data/lib/oddb/html/util/lookandfeel.rb +554 -0
  105. data/lib/oddb/html/util/need_all_input.rb +29 -0
  106. data/lib/oddb/html/util/session.rb +88 -0
  107. data/lib/oddb/html/util/sort.rb +72 -0
  108. data/lib/oddb/html/util/unsaved_helper.rb +20 -0
  109. data/lib/oddb/html/util/validator.rb +54 -0
  110. data/lib/oddb/html/view/ajax/json.rb +22 -0
  111. data/lib/oddb/html/view/alpha_header.rb +28 -0
  112. data/lib/oddb/html/view/document.rb +126 -0
  113. data/lib/oddb/html/view/drugs/admin/package.rb +237 -0
  114. data/lib/oddb/html/view/drugs/admin/product.rb +104 -0
  115. data/lib/oddb/html/view/drugs/admin/sequence.rb +312 -0
  116. data/lib/oddb/html/view/drugs/ajax/explain_ddd_price.rb +87 -0
  117. data/lib/oddb/html/view/drugs/ajax/explain_price.rb +61 -0
  118. data/lib/oddb/html/view/drugs/ajax/package_infos.rb +105 -0
  119. data/lib/oddb/html/view/drugs/ajax/remote_infos.rb +44 -0
  120. data/lib/oddb/html/view/drugs/atc_browser.rb +68 -0
  121. data/lib/oddb/html/view/drugs/atc_guidelines.rb +94 -0
  122. data/lib/oddb/html/view/drugs/compare.rb +95 -0
  123. data/lib/oddb/html/view/drugs/download_export.rb +28 -0
  124. data/lib/oddb/html/view/drugs/fachinfo.rb +46 -0
  125. data/lib/oddb/html/view/drugs/feedback.rb +231 -0
  126. data/lib/oddb/html/view/drugs/init.rb +51 -0
  127. data/lib/oddb/html/view/drugs/legend.rb +24 -0
  128. data/lib/oddb/html/view/drugs/package.rb +398 -0
  129. data/lib/oddb/html/view/drugs/patinfo.rb +46 -0
  130. data/lib/oddb/html/view/drugs/products.rb +97 -0
  131. data/lib/oddb/html/view/drugs/result.rb +296 -0
  132. data/lib/oddb/html/view/drugs/search.rb +33 -0
  133. data/lib/oddb/html/view/drugs/template.rb +15 -0
  134. data/lib/oddb/html/view/foot.rb +52 -0
  135. data/lib/oddb/html/view/google.rb +23 -0
  136. data/lib/oddb/html/view/google_ads.rb +40 -0
  137. data/lib/oddb/html/view/head.rb +78 -0
  138. data/lib/oddb/html/view/limit.rb +109 -0
  139. data/lib/oddb/html/view/list.rb +59 -0
  140. data/lib/oddb/html/view/login.rb +38 -0
  141. data/lib/oddb/html/view/navigation.rb +67 -0
  142. data/lib/oddb/html/view/offset_header.rb +35 -0
  143. data/lib/oddb/html/view/paypal/collect.rb +84 -0
  144. data/lib/oddb/html/view/paypal/redirect.rb +51 -0
  145. data/lib/oddb/html/view/paypal/register_form.rb +106 -0
  146. data/lib/oddb/html/view/register_export.rb +29 -0
  147. data/lib/oddb/html/view/register_poweruser.rb +29 -0
  148. data/lib/oddb/html/view/rss/feedback.rb +64 -0
  149. data/lib/oddb/html/view/rss_preview.rb +54 -0
  150. data/lib/oddb/html/view/search.rb +104 -0
  151. data/lib/oddb/html/view/snapback.rb +24 -0
  152. data/lib/oddb/html/view/template.rb +56 -0
  153. data/lib/oddb/import/excel.rb +45 -0
  154. data/lib/oddb/import/import.rb +39 -0
  155. data/lib/oddb/import/rtf.rb +410 -0
  156. data/lib/oddb/import/whocc.rb +173 -0
  157. data/lib/oddb/import/xml.rb +15 -0
  158. data/lib/oddb/model.rb +179 -0
  159. data/lib/oddb/persistence/odba.rb +33 -0
  160. data/lib/oddb/persistence/odba/business/company.rb +13 -0
  161. data/lib/oddb/persistence/odba/business/invoice.rb +15 -0
  162. data/lib/oddb/persistence/odba/drugs/atc.rb +15 -0
  163. data/lib/oddb/persistence/odba/drugs/galenic_form.rb +18 -0
  164. data/lib/oddb/persistence/odba/drugs/galenic_group.rb +13 -0
  165. data/lib/oddb/persistence/odba/drugs/package.rb +25 -0
  166. data/lib/oddb/persistence/odba/drugs/product.rb +13 -0
  167. data/lib/oddb/persistence/odba/drugs/sequence.rb +21 -0
  168. data/lib/oddb/persistence/odba/drugs/substance.rb +21 -0
  169. data/lib/oddb/persistence/odba/drugs/substance_group.rb +13 -0
  170. data/lib/oddb/persistence/odba/drugs/unit.rb +13 -0
  171. data/lib/oddb/persistence/odba/export.rb +26 -0
  172. data/lib/oddb/persistence/odba/model.rb +68 -0
  173. data/lib/oddb/persistence/odba/regulatory/authority.rb +13 -0
  174. data/lib/oddb/persistence/odba/regulatory/registration.rb +13 -0
  175. data/lib/oddb/persistence/odba/text/document.rb +11 -0
  176. data/lib/oddb/persistence/odba/util/code.rb +11 -0
  177. data/lib/oddb/persistence/odba/util/m10l_document.rb +13 -0
  178. data/lib/oddb/persistence/og.rb +16 -0
  179. data/lib/oddb/persistence/og/drugs/composition.rb +14 -0
  180. data/lib/oddb/persistence/og/drugs/product.rb +14 -0
  181. data/lib/oddb/persistence/og/drugs/sequence.rb +15 -0
  182. data/lib/oddb/persistence/og/model.rb +25 -0
  183. data/lib/oddb/persistence/og/util/multilingual.rb +13 -0
  184. data/lib/oddb/redist/rtf_tools/reader.rb +139 -0
  185. data/lib/oddb/regulatory/authority.rb +14 -0
  186. data/lib/oddb/regulatory/registration.rb +15 -0
  187. data/lib/oddb/remote/business/company.rb +23 -0
  188. data/lib/oddb/remote/drugs/active_agent.rb +27 -0
  189. data/lib/oddb/remote/drugs/atc.rb +32 -0
  190. data/lib/oddb/remote/drugs/dose.rb +8 -0
  191. data/lib/oddb/remote/drugs/galenic_form.rb +25 -0
  192. data/lib/oddb/remote/drugs/package.rb +126 -0
  193. data/lib/oddb/remote/drugs/part.rb +30 -0
  194. data/lib/oddb/remote/drugs/product.rb +19 -0
  195. data/lib/oddb/remote/drugs/sequence.rb +46 -0
  196. data/lib/oddb/remote/drugs/substance.rb +20 -0
  197. data/lib/oddb/remote/drugs/unit.rb +19 -0
  198. data/lib/oddb/remote/object.rb +36 -0
  199. data/lib/oddb/remote/text/document.rb +20 -0
  200. data/lib/oddb/remote/util/m10l_document.rb +22 -0
  201. data/lib/oddb/text/chapter.rb +27 -0
  202. data/lib/oddb/text/document.rb +43 -0
  203. data/lib/oddb/text/format.rb +37 -0
  204. data/lib/oddb/text/paragraph.rb +58 -0
  205. data/lib/oddb/text/picture.rb +93 -0
  206. data/lib/oddb/text/table.rb +68 -0
  207. data/lib/oddb/util.rb +8 -0
  208. data/lib/oddb/util/annotated_list.rb +37 -0
  209. data/lib/oddb/util/code.rb +69 -0
  210. data/lib/oddb/util/comparison.rb +36 -0
  211. data/lib/oddb/util/exporter.rb +8 -0
  212. data/lib/oddb/util/feedback.rb +23 -0
  213. data/lib/oddb/util/ipn.rb +48 -0
  214. data/lib/oddb/util/m10l_document.rb +38 -0
  215. data/lib/oddb/util/mail.rb +73 -0
  216. data/lib/oddb/util/money.rb +60 -0
  217. data/lib/oddb/util/multilingual.rb +70 -0
  218. data/lib/oddb/util/quanty.rb +4 -0
  219. data/lib/oddb/util/quanty/fact.rb +229 -0
  220. data/lib/oddb/util/quanty/main.rb +160 -0
  221. data/lib/oddb/util/quanty/parse.rb +853 -0
  222. data/lib/oddb/util/quanty/units.dump +0 -0
  223. data/lib/oddb/util/server.rb +117 -0
  224. data/lib/oddb/util/updater.rb +41 -0
  225. data/lib/oddb/util/ydim.rb +110 -0
  226. data/lib/oddb/util/yus.rb +46 -0
  227. data/test/business/test_company.rb +29 -0
  228. data/test/business/test_price.rb +46 -0
  229. data/test/drugs/test_active_agent.rb +53 -0
  230. data/test/drugs/test_atc.rb +54 -0
  231. data/test/drugs/test_composition.rb +88 -0
  232. data/test/drugs/test_ddd.rb +22 -0
  233. data/test/drugs/test_dose.rb +190 -0
  234. data/test/drugs/test_galenic_form.rb +41 -0
  235. data/test/drugs/test_package.rb +173 -0
  236. data/test/drugs/test_part.rb +32 -0
  237. data/test/drugs/test_product.rb +31 -0
  238. data/test/drugs/test_sequence.rb +140 -0
  239. data/test/drugs/test_substance.rb +51 -0
  240. data/test/drugs/test_substance_group.rb +27 -0
  241. data/test/export/test_rss.rb +94 -0
  242. data/test/export/test_server.rb +117 -0
  243. data/test/export/test_xls.rb +152 -0
  244. data/test/export/test_yaml.rb +120 -0
  245. data/test/import/data/html/whocc/A.html +56 -0
  246. data/test/import/data/html/whocc/A03.html +48 -0
  247. data/test/import/data/html/whocc/A03AB.html +48 -0
  248. data/test/import/data/html/whocc/A06AA.html +47 -0
  249. data/test/import/data/html/whocc/C03.html +47 -0
  250. data/test/import/data/html/whocc/login.html +77 -0
  251. data/test/import/data/xml/ATC_2006.xml +47 -0
  252. data/test/import/data/xml/ATC_2006_ddd.xml +35 -0
  253. data/test/import/test_excel.rb +34 -0
  254. data/test/import/test_rtf.rb +40 -0
  255. data/test/import/test_whocc.rb +315 -0
  256. data/test/remote/drugs/test_active_agent.rb +36 -0
  257. data/test/selenium/selenium-server.jar +0 -0
  258. data/test/selenium/test_atc_browser.rb +122 -0
  259. data/test/selenium/test_atc_guidelines.rb +96 -0
  260. data/test/selenium/test_collect.rb +138 -0
  261. data/test/selenium/test_compare.rb +206 -0
  262. data/test/selenium/test_fachinfo.rb +130 -0
  263. data/test/selenium/test_feedback.rb +196 -0
  264. data/test/selenium/test_init.rb +52 -0
  265. data/test/selenium/test_limit.rb +305 -0
  266. data/test/selenium/test_login.rb +67 -0
  267. data/test/selenium/test_package.rb +512 -0
  268. data/test/selenium/test_patinfo.rb +131 -0
  269. data/test/selenium/test_product.rb +80 -0
  270. data/test/selenium/test_products.rb +142 -0
  271. data/test/selenium/test_search.rb +715 -0
  272. data/test/selenium/test_sequence.rb +543 -0
  273. data/test/selenium/unit.rb +185 -0
  274. data/test/stub/http_server.rb +169 -0
  275. data/test/stub/model.rb +173 -0
  276. data/test/suite.rb +15 -0
  277. data/test/test_model.rb +83 -0
  278. data/test/util/test_code.rb +74 -0
  279. data/test/util/test_ipn.rb +117 -0
  280. data/test/util/test_mail.rb +86 -0
  281. data/test/util/test_multilingual.rb +97 -0
  282. data/test/util/test_server.rb +48 -0
  283. data/test/util/test_updater.rb +353 -0
  284. data/test/util/test_ydim.rb +115 -0
  285. data/test/util/test_yus.rb +79 -0
  286. metadata +418 -0
@@ -0,0 +1,152 @@
1
+ #!/usr/bin/env ruby
2
+ # Export::Xls::Test -- de.oddb.org -- 16.03.2007 -- hwyss@ywesee.com
3
+
4
+ $: << File.expand_path('../../lib', File.dirname(__FILE__))
5
+ $: << File.expand_path('..', File.dirname(__FILE__))
6
+
7
+ require 'drb'
8
+ require 'flexmock'
9
+ require 'test/unit'
10
+ require 'oddb/config'
11
+ require 'oddb/export/xls'
12
+ require 'stub/model'
13
+
14
+ module ODDB
15
+ module Export
16
+ module Xls
17
+ class TestComparisonDeCh < Test::Unit::TestCase
18
+ include FlexMock::TestCase
19
+ def setup
20
+ @export = ComparisonDeCh.new
21
+ flexstub(Currency).should_receive(:rate).with('EUR', 'CHF')\
22
+ .and_return(1.6)
23
+ end
24
+ def setup_package(name="Amantadin by Producer", atccode='N04BB01')
25
+ product = Drugs::Product.new
26
+ company = Business::Company.new
27
+ company.name.de = 'Producer AG'
28
+ product.company = company
29
+ company.save
30
+ sequence = Drugs::Sequence.new
31
+ sequence.product = product
32
+ atc = Drugs::Atc.new(atccode)
33
+ atc.name.de = 'Amantadin'
34
+ ddd = Drugs::Ddd.new('O')
35
+ ddd.dose = Drugs::Dose.new(10, 'mg')
36
+ atc.add_ddd(ddd)
37
+ sequence.atc = atc
38
+ composition = Drugs::Composition.new
39
+ galform = Drugs::GalenicForm.new
40
+ galform.description.de = 'Tropfen'
41
+ composition.galenic_form = galform
42
+ grp = Drugs::GalenicGroup.new('Tropfen')
43
+ grp.administration = 'O'
44
+ galform.group = grp
45
+ sequence.add_composition(composition)
46
+ substance = Drugs::Substance.new
47
+ substance.name.de = 'Amantadin'
48
+ dose = Drugs::Dose.new(100, 'mg')
49
+ active_agent = Drugs::ActiveAgent.new(substance, dose)
50
+ composition.add_active_agent(active_agent)
51
+ package = Drugs::Package.new
52
+ code = Util::Code.new(:cid, '12345', 'CH')
53
+ package.add_code(code)
54
+ code = Util::Code.new(:festbetragsstufe, 3, 'CH')
55
+ package.add_code(code)
56
+ code = Util::Code.new(:festbetragsgruppe, 4, 'CH')
57
+ package.add_code(code)
58
+ code = Util::Code.new(:zuzahlungsbefreit, true, 'CH')
59
+ package.add_code(code)
60
+ code = Util::Code.new(:prescription, true, 'CH')
61
+ package.add_code(code)
62
+ part = Drugs::Part.new
63
+ part.package = package
64
+ part.size = 5
65
+ part.composition = composition
66
+ unit = Drugs::Unit.new
67
+ unit.name.de = 'Ampullen'
68
+ part.unit = unit
69
+ part.quantity = Drugs::Dose.new(20, 'ml')
70
+ package.name.de = name
71
+ package.sequence = sequence
72
+ pr1 = Business::Price.new(:public, 'CH')
73
+ pr1.value = 16
74
+ package.add_price(pr1)
75
+ pr2 = Business::Price.new(:festbetrag, 'CH')
76
+ pr2.value = 20
77
+ package.add_price(pr2)
78
+ pr3 = Business::Price.new(:exfactory, 'CH')
79
+ pr3.value = 6.5
80
+ package.add_price(pr3)
81
+ package.save
82
+ package
83
+ end
84
+ def setup_remote_package(name, uid='55555', price=30, ikscat='B')
85
+ rpackage = flexmock('Remote Package')
86
+ rpackage.should_receive(:barcode).and_return("7680#{uid}0012")
87
+ rpackage.should_receive(:name_base).and_return(name)
88
+ rpackage.should_receive(:price_public).and_return {
89
+ price
90
+ }
91
+ rpackage.should_receive(:price_exfactory).times(1).and_return {
92
+ price / 2
93
+ }
94
+ rpackage.should_receive(:ikscat).and_return(ikscat)
95
+ rpackage.should_receive(:sl_entry).and_return(true)
96
+ rpackage.should_receive(:comparable_size)\
97
+ .and_return(Drugs::Dose.new(100, 'ml'))
98
+ rpackage.should_receive(:__drbref).and_return(uid)
99
+ rcompany = flexmock('Remote Company')
100
+ rpackage.should_receive(:company).and_return(rcompany)
101
+ rcompany.should_receive(:name).and_return('Producer (Schweiz) AG')
102
+ ratc = flexmock('Remote Atc Class')
103
+ rpackage.should_receive(:atc_class).and_return(ratc)
104
+ ratc.should_receive(:code).and_return('N04BB01')
105
+ ratc.should_receive(:de).and_return('Amantadine')
106
+ ragent = flexmock('Remote ActiveAgent')
107
+ rpackage.should_receive(:active_agents).and_return([ragent])
108
+ rsubstance = flexmock('Remote Substance')
109
+ ragent.should_receive(:dose).and_return(Drugs::Dose.new(100, 'mg'))
110
+ ragent.should_receive(:substance).and_return(rsubstance)
111
+ rsubstance.should_receive(:de).and_return('Amantadinum')
112
+ rgalform = flexmock('Remote Galenic Form')
113
+ rpackage.should_receive(:galenic_forms).and_return([rgalform])
114
+ rgalform.should_receive(:de).and_return('Tropfen')
115
+ rgroup = flexmock('Remote Galenic Group')
116
+ rgroup.should_receive(:de).and_return('Unbekannt')
117
+ rgalform.should_receive(:galenic_group).and_return(rgroup)
118
+ rpackage.should_ignore_missing
119
+ rpackage
120
+ end
121
+ def test_export
122
+ remote = flexmock('remote')
123
+ pack = setup_package
124
+ rpack = setup_remote_package('Remotadin')
125
+ remote.should_receive(:remote_each_package).and_return { |block|
126
+ block.call(rpack)
127
+ }
128
+ drb = DRb.start_service('druby://localhost:0', remote)
129
+ book = flexmock('workbook')
130
+ book.should_receive(:add_format).with(Spreadsheet::Format)
131
+ book.should_ignore_missing
132
+ flexstub(Spreadsheet::Excel).should_receive(:new).and_return(book)
133
+ sheet = flexmock('worksheet')
134
+ book.should_receive(:add_worksheet).with('Preisvergleich')\
135
+ .times(1).and_return(sheet)
136
+ sheet.should_receive(:write).with(0,0, Array, Spreadsheet::Format).times(1)
137
+
138
+ expected = [ "Amantadin by Producer (Remotadin)", "100 ml", "23.15",
139
+ "Producer AG (Producer (Schweiz) AG)", "12345",
140
+ "7680555550012", "Tropfen", "100 mg",
141
+ "Amantadin (Amantadinum)", "N04BB01", "B", "SL",
142
+ "-6.85", "-22.84%", "1.00", "9.40", "15.00", "-5.60", "-37.31%" ]
143
+ sheet.should_receive(:write).with(1,0, Array).times(1)\
144
+ .and_return { |row, col, cells|
145
+ assert_equal(expected, cells)
146
+ }
147
+ @export.export(drb.uri, '')
148
+ end
149
+ end
150
+ end
151
+ end
152
+ end
@@ -0,0 +1,120 @@
1
+ #!/usr/bin/env ruby
2
+ # Export::Yaml::Test -- de.oddb.org -- 11.10.2007 -- hwyss@ywesee.com
3
+
4
+ $: << File.expand_path('../../lib', File.dirname(__FILE__))
5
+ $: << File.expand_path('..', File.dirname(__FILE__))
6
+
7
+ require 'drb'
8
+ require 'flexmock'
9
+ require 'test/unit'
10
+ require 'oddb/persistence/odba/export'
11
+ require 'oddb/util/money'
12
+ require 'stub/model'
13
+
14
+ module ODDB
15
+ module Export
16
+ module Yaml
17
+ class TestOdbaYamlInternals < Test::Unit::TestCase
18
+ include FlexMock::TestCase
19
+ def test_code
20
+ code = ODDB::Util::Code.new("codetype", "codevalue", "country")
21
+ code.extend(ODBA::Persistable)
22
+ assert_equal([:@country, :@type], code.to_yaml_properties)
23
+ expected = <<-EOS
24
+ --- !de.oddb.org,2007/ODDB::Util::Code
25
+ country: COUNTRY
26
+ type: codetype
27
+ value: codevalue
28
+ EOS
29
+ assert_equal(expected, code.to_yaml)
30
+ end
31
+ def test_company
32
+ company = ODDB::Business::Company.new
33
+ company.name.de = "Test GmbH"
34
+ company.extend(ODBA::Persistable)
35
+ assert_not_nil(company.products)
36
+ assert_equal([:@name], company.to_yaml_properties)
37
+ expected = <<-EOS
38
+ --- !de.oddb.org,2007/ODDB::Business::Company
39
+ name: !de.oddb.org,2007/ODDB::Util::Multilingual
40
+ canonical:
41
+ :de: Test GmbH
42
+ synonyms: []
43
+
44
+ EOS
45
+ assert_equal(expected, company.to_yaml)
46
+ end
47
+ def test_dose
48
+ dose = ODDB::Drugs::Dose.new(912.5, 'mg')
49
+ dose.extend(ODBA::Persistable)
50
+ assert_equal([:@val, :@unit], dose.to_yaml_properties)
51
+ expected = <<-EOS
52
+ --- !de.oddb.org,2007/ODDB::Drugs::Dose
53
+ val: 912.5
54
+ unit: mg
55
+ EOS
56
+ assert_equal(expected, dose.to_yaml)
57
+ end
58
+ def test_export
59
+ p1 = ODDB::Drugs::Product.new
60
+ p1.instance_variable_set(:@odba_id, 1)
61
+ p1.extend(ODBA::Persistable)
62
+ p2 = ODDB::Drugs::Product.new
63
+ p2.instance_variable_set(:@odba_id, 2)
64
+ p2.extend(ODBA::Persistable)
65
+ flexmock(ODDB::Drugs::Product).should_receive(:all).and_return { |block|
66
+ block.call p1
67
+ block.call p2
68
+ }
69
+ io = StringIO.new
70
+ Drugs.new.export(io)
71
+ expected = <<-EOS
72
+ --- !de.oddb.org,2007/ODDB::Drugs::Product
73
+ oid: 1
74
+ sequences: []
75
+
76
+ --- !de.oddb.org,2007/ODDB::Drugs::Product
77
+ oid: 2
78
+ sequences: []
79
+
80
+ EOS
81
+ io.rewind
82
+ assert_equal expected, io.read
83
+ end
84
+ def test_package
85
+ package = ODDB::Drugs::Package.new
86
+ package.add_price(Business::Price.new(:public, 'CH', 12.5))
87
+ package.sequence = ODDB::Drugs::Sequence.new
88
+ package.add_part(ODDB::Drugs::Part.new)
89
+ package.extend(ODBA::Persistable)
90
+ assert_equal([:@parts], package.to_yaml_properties)
91
+ expected = <<-EOS
92
+ --- !de.oddb.org,2007/ODDB::Drugs::Package
93
+ parts:
94
+ - !de.oddb.org,2007/ODDB::Drugs::Part
95
+ size: 1
96
+ prices:
97
+ public: 12.5
98
+ EOS
99
+ assert_equal(expected, package.to_yaml)
100
+ end
101
+ def test_product
102
+ assert_respond_to(ODDB::Drugs::Product, :export)
103
+ product = ODDB::Drugs::Product.new
104
+ product.extend(ODBA::Persistable)
105
+ company = ODDB::Business::Company.new
106
+ product.company = company
107
+ assert_equal([:@company, :@sequences], product.to_yaml_properties)
108
+ expected = <<-EOS
109
+ --- !de.oddb.org,2007/ODDB::Drugs::Product
110
+ company: !de.oddb.org,2007/ODDB::Business::Company {}
111
+
112
+ sequences: []
113
+
114
+ EOS
115
+ assert_equal(expected, product.to_yaml)
116
+ end
117
+ end
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,56 @@
1
+
2
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
3
+
4
+ <html>
5
+ <head>
6
+ <title>ATC/DDD</title>
7
+
8
+ <style type="text/css">
9
+ <!--
10
+
11
+ body,p,td,h1,h2,h3,ol,ul,li,dl,input,a,center,div {font-family: Tahoma, Helvetica, Arial}
12
+ body,p,td,ol,ul,li,dl,input,div.c {font-size: x-small}
13
+
14
+ body {
15
+ scrollbar-face-color : #554488;
16
+ scrollbar-shadow-color : #333366;
17
+ scrollbar-highlight-color : #8877aa;
18
+ scrollbar-3dlight-color : #9999cc;
19
+ scrollbar-darkshadow-color : #000000;
20
+ scrollbar-track-color : #666699;
21
+ scrollbar-arrow-color : #ccccee
22
+ }
23
+
24
+ h2 {color: #000000; font-size: large}
25
+ h3 {color: #554488; font-size: medium}
26
+ h4 {color: #6644aa; font-size: small}
27
+
28
+ a:hover {color:#000099; background:#ccccff; text-decoration: underline}
29
+
30
+ //-->
31
+ </style>
32
+
33
+ </head>
34
+
35
+
36
+ <body bgcolor="#ffffff" text="#000000" link="#6633ff" vlink="#993399">
37
+ <p align="right"><a href="index.php">New search</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?query=A">Hide text from Guidelines</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?logout=true">Log out</a>&nbsp;&nbsp;&nbsp;&nbsp;</p>A <b><a href="index.php?query=A">ALIMENTARY TRACT AND METABOLISM</a></b><br>
38
+ <p>A01 <b><a href="index.php?query=A01&showdescription=yes">STOMATOLOGICAL PREPARATIONS</a></b><br>
39
+ A02 <b><a href="index.php?query=A02&showdescription=yes">DRUGS FOR ACID RELATED DISORDERS</a></b><br>
40
+ A03 <b><a href="index.php?query=A03&showdescription=yes">DRUGS FOR FUNCTIONAL GASTROINTESTINAL DISORDERS</a></b><br>
41
+ <p>A major part of the preparations in this group are combined preparations. Preparations containing e.g. analgesics and antispasmodics could be classified either in this group or in N02 - Analgesics. Combinations of psycholeptics and antispasmodics could be classified in A03 or in N05 - Psycholeptics etc. The main indication for the use of the combination will, together with the relative effect of the active components, decide the classification. In the treatment of pain caused by spasms, the spasmolytic component must be judged as more important than the analgesic component. Accordingly, analgesic/antispasmodic combinations should be classified in A03 if the main effect of the preparation is the antispasmodic action. <br>Combined preparations are classified in:<br><br><br>A03C - Antispasmodics in combination with psycholeptics <br>A03D - Antispasmodics in combination with analgesics <br>A03E - Antispasmodics and anticholinergics in combination with other drugs <br><br>Antispasmodics, which are used specifically in the urogenital tractus, are classified in G04BD - Urinary antispasmodics. <br><br><table bgcolor="#cccccc" cellpadding="4" cellspacing="0" border="0"><tr><td>The DDD is equal for different routes of administration (oral, parenteral or rectal) of the same compound and is based on the oral dose. </td></tr></table><p>A04 <b><a href="index.php?query=A04&showdescription=yes">ANTIEMETICS AND ANTINAUSEANTS</a></b><br>
42
+ A05 <b><a href="index.php?query=A05&showdescription=yes">BILE AND LIVER THERAPY</a></b><br>
43
+ A06 <b><a href="index.php?query=A06&showdescription=yes">LAXATIVES</a></b><br>
44
+ A07 <b><a href="index.php?query=A07&showdescription=yes">ANTIDIARRHEALS, INTESTINAL ANTIINFLAMMATORY/ANTIINFECTIVE AGENTS</a></b><br>
45
+ A08 <b><a href="index.php?query=A08&showdescription=yes">ANTIOBESITY PREPARATIONS, EXCL. DIET PRODUCTS</a></b><br>
46
+ A09 <b><a href="index.php?query=A09&showdescription=yes">DIGESTIVES, INCL. ENZYMES</a></b><br>
47
+ A10 <b><a href="index.php?query=A10&showdescription=yes">DRUGS USED IN DIABETES</a></b><br>
48
+ A11 <b><a href="index.php?query=A11&showdescription=yes">VITAMINS</a></b><br>
49
+ <p>Vitamins constitute a comprehensive group of therapeutic and prophylactic preparations. Before classifying any product it is important to be familiar with the main subdivision of the group. <br><br>It may be necessary to consider whether a product is a vitamin preparation with iron or an iron preparation with vitamins, a mineral preparation with vitamins or a vitamin preparation with minerals, or if the product should be regarded as a tonic etc. As an aid to such considerations, guidelines are given at each sublevel. <br><br>Vitamin B12 is classified in B03 - Antianemic preparations. <br>Vitamin K is classified in B02 - Antihemorrhagics.<br><br>Vitamins administered as i.v. solution additives, see B05XC. <br><br>Some definitions:<br><br>Multivitamins: Products containing minimum vitamins A, B, C and D. One B-vitamin is sufficient. <br><br>B-complex: Products containing minimum thiamine, riboflavine, pyridoxine, nicotinamide. The products may contain other B-vitamins.<p>A12 <b><a href="index.php?query=A12&showdescription=yes">MINERAL SUPPLEMENTS</a></b><br>
50
+ <p>This group contains mineral supplements used for treatment of mineral deficiency. Magnesium carbonate used for treatment of mineral deficiency is classified in A02AA01.<p>A13 <b><a href="index.php?query=A13&showdescription=yes">TONICS</a></b><br>
51
+ A14 <b><a href="index.php?query=A14&showdescription=yes">ANABOLIC AGENTS FOR SYSTEMIC USE</a></b><br>
52
+ A15 <b><a href="index.php?query=A15&showdescription=yes">APPETITE STIMULANTS</a></b><br>
53
+ <p>This group comprises preparations only used as appetite stimulants. <br>A number of drugs with other main actions may have appetite stimulating properties. <br><br>Cyproheptadine, also used as an appetite stimulant in children, is classified in R06AX. Pizotifen is classified in N02CX.<br><br><table bgcolor="#cccccc" cellpadding="4" cellspacing="0" border="0"><tr><td>No DDDs are established in this group.</td></tr></table><p>A16 <b><a href="index.php?query=A16&showdescription=yes">OTHER ALIMENTARY TRACT AND METABOLISM PRODUCTS</a></b><br>
54
+
55
+ </body>
56
+ </html>
@@ -0,0 +1,48 @@
1
+
2
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
3
+
4
+ <html>
5
+ <head>
6
+ <title>ATC/DDD</title>
7
+
8
+ <style type="text/css">
9
+ <!--
10
+
11
+ body,p,td,h1,h2,h3,ol,ul,li,dl,input,a,center,div {font-family: Tahoma, Helvetica, Arial}
12
+ body,p,td,ol,ul,li,dl,input,div.c {font-size: x-small}
13
+
14
+ body {
15
+ scrollbar-face-color : #554488;
16
+ scrollbar-shadow-color : #333366;
17
+ scrollbar-highlight-color : #8877aa;
18
+ scrollbar-3dlight-color : #9999cc;
19
+ scrollbar-darkshadow-color : #000000;
20
+ scrollbar-track-color : #666699;
21
+ scrollbar-arrow-color : #ccccee
22
+ }
23
+
24
+ h2 {color: #000000; font-size: large}
25
+ h3 {color: #554488; font-size: medium}
26
+ h4 {color: #6644aa; font-size: small}
27
+
28
+ a:hover {color:#000099; background:#ccccff; text-decoration: underline}
29
+
30
+ //-->
31
+ </style>
32
+
33
+ </head>
34
+
35
+
36
+ <body bgcolor="#ffffff" text="#000000" link="#6633ff" vlink="#993399">
37
+ <p align="right"><a href="index.php">New search</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?query=A03">Hide text from Guidelines</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?logout=true">Log out</a>&nbsp;&nbsp;&nbsp;&nbsp;</p>A <b><a href="index.php?query=A">ALIMENTARY TRACT AND METABOLISM</a></b><br>
38
+ A03 <b><a href="index.php?query=A03">DRUGS FOR FUNCTIONAL GASTROINTESTINAL DISORDERS</a></b><br>
39
+ <p>A major part of the preparations in this group are combined preparations. Preparations containing e.g. analgesics and antispasmodics could be classified either in this group or in N02 - Analgesics. Combinations of psycholeptics and antispasmodics could be classified in A03 or in N05 - Psycholeptics etc. The main indication for the use of the combination will, together with the relative effect of the active components, decide the classification. In the treatment of pain caused by spasms, the spasmolytic component must be judged as more important than the analgesic component. Accordingly, analgesic/antispasmodic combinations should be classified in A03 if the main effect of the preparation is the antispasmodic action. <br>Combined preparations are classified in:<br><br><br>A03C - Antispasmodics in combination with psycholeptics <br>A03D - Antispasmodics in combination with analgesics <br>A03E - Antispasmodics and anticholinergics in combination with other drugs <br><br>Antispasmodics, which are used specifically in the urogenital tractus, are classified in G04BD - Urinary antispasmodics. <br><br><table bgcolor="#cccccc" cellpadding="4" cellspacing="0" border="0"><tr><td>The DDD is equal for different routes of administration (oral, parenteral or rectal) of the same compound and is based on the oral dose. </td></tr></table></p><br>
40
+ <p>A03A <b><a href="index.php?query=A03A&showdescription=yes">DRUGS FOR FUNCTIONAL BOWEL DISORDERS</a></b><br>
41
+ <p>Semisynthetic derivatives such as butylscopolamine, are classified in A03B - Belladonna and derivatives, plain.<p>A03B <b><a href="index.php?query=A03B&showdescription=yes">BELLADONNA AND DERIVATIVES, PLAIN</a></b><br>
42
+ A03C <b><a href="index.php?query=A03C&showdescription=yes">ANTISPASMODICS IN COMBINATION WITH PSYCHOLEPTICS</a></b><br>
43
+ <p>Antispasmodics in combination with psycholeptics and other drugs (excl. analgesics) are classified in this group.<br><br>Antispasmodics in combination with both psycholeptics and analgesics are classified in A03EA.<br><br> The classification at the 5th levels is based on the antispasmodic component. At each 5th level several psycholeptics may occur. When classifying such combined products, it is necessary to look at the main indication and the composition, to see if the preparation should be classified in A03 or in N05 - Psycholeptics (see comments under A03).<p>A03D <b><a href="index.php?query=A03D&showdescription=yes">ANTISPASMODICS IN COMBINATION WITH ANALGESICS</a></b><br>
44
+ <p>This group is completely parallel to A03C.<br><br>The classification at the 5th levels is based on the antispasmodic component. At each 5th level several analgesics may occur. Antispasmodics in combination with analgesics and other drugs (excl. psycholeptics) are classified in this group.<br><br>When classifying these combination products, it is necessary to look at the indications and the composition to see if the preparation should be classified in A03 or in N02 - Analgesics. <br><br>Opioid analgesics in combination with antispasmodics, see N02AG - Opioids in combination with antispasmodics. Ethylmorphine is not regarded as a narcotic in this context. <br> Antispasmodics in combination with psycholeptics and analgesics are classified in A03EA.<p>A03E <b><a href="index.php?query=A03E&showdescription=yes">ANTISPASMODICS AND ANTICHOLINERGICS IN COMBINATION WITH OTHER DRUGS</a></b><br>
45
+ <p>General comments, see A03.<br><br>This group comprises all combined preparations with antispasmodics and anticholinergics, which are not covered by A03C or A03D.<p>A03F <b><a href="index.php?query=A03F&showdescription=yes">PROPULSIVES</a></b><br>
46
+
47
+ </body>
48
+ </html>
@@ -0,0 +1,48 @@
1
+
2
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
3
+
4
+ <html>
5
+ <head>
6
+ <title>ATC/DDD</title>
7
+
8
+ <style type="text/css">
9
+ <!--
10
+
11
+ body,p,td,h1,h2,h3,ol,ul,li,dl,input,a,center,div {font-family: Tahoma, Helvetica, Arial}
12
+ body,p,td,ol,ul,li,dl,input,div.c {font-size: x-small}
13
+
14
+ body {
15
+ scrollbar-face-color : #554488;
16
+ scrollbar-shadow-color : #333366;
17
+ scrollbar-highlight-color : #8877aa;
18
+ scrollbar-3dlight-color : #9999cc;
19
+ scrollbar-darkshadow-color : #000000;
20
+ scrollbar-track-color : #666699;
21
+ scrollbar-arrow-color : #ccccee
22
+ }
23
+
24
+ h2 {color: #000000; font-size: large}
25
+ h3 {color: #554488; font-size: medium}
26
+ h4 {color: #6644aa; font-size: small}
27
+
28
+ a:hover {color:#000099; background:#ccccff; text-decoration: underline}
29
+
30
+ //-->
31
+ </style>
32
+
33
+ </head>
34
+
35
+
36
+ <body bgcolor="#ffffff" text="#000000" link="#6633ff" vlink="#993399">
37
+ <p align="right"><a href="index.php">New search</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?query=A03AB">Hide text from Guidelines</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?logout=true">Log out</a>&nbsp;&nbsp;&nbsp;&nbsp;</p>A <b><a href="index.php?query=A">ALIMENTARY TRACT AND METABOLISM</a></b><br>
38
+ A03 <b><a href="index.php?query=A03">DRUGS FOR FUNCTIONAL GASTROINTESTINAL DISORDERS</a></b><br>
39
+ <p>A major part of the preparations in this group are combined preparations. Preparations containing e.g. analgesics and antispasmodics could be classified either in this group or in N02 - Analgesics. Combinations of psycholeptics and antispasmodics could be classified in A03 or in N05 - Psycholeptics etc. The main indication for the use of the combination will, together with the relative effect of the active components, decide the classification. In the treatment of pain caused by spasms, the spasmolytic component must be judged as more important than the analgesic component. Accordingly, analgesic/antispasmodic combinations should be classified in A03 if the main effect of the preparation is the antispasmodic action. <br>Combined preparations are classified in:<br><br><br>A03C - Antispasmodics in combination with psycholeptics <br>A03D - Antispasmodics in combination with analgesics <br>A03E - Antispasmodics and anticholinergics in combination with other drugs <br><br>Antispasmodics, which are used specifically in the urogenital tractus, are classified in G04BD - Urinary antispasmodics. <br><br><table bgcolor="#cccccc" cellpadding="4" cellspacing="0" border="0"><tr><td>The DDD is equal for different routes of administration (oral, parenteral or rectal) of the same compound and is based on the oral dose. </td></tr></table></p><br>
40
+ A03A <b><a href="index.php?query=A03A">DRUGS FOR FUNCTIONAL BOWEL DISORDERS</a></b><br>
41
+ <p>Semisynthetic derivatives such as butylscopolamine, are classified in A03B - Belladonna and derivatives, plain.</p><br>
42
+ A03AB <b><a href="index.php?query=A03AB">Synthetic anticholinergics, quaternary ammonium compounds</a></b><br>
43
+ <p>Plain preparations containing glycopyrronium are classified in this group. Preparations containing glycopyrronium in combination with neostigmine are classified in N07AA51. Trospium see G04BD and A03DA.</p><br>
44
+ <p><ul><table cellpadding="0" cellspacing="0" border="0">
45
+ <tr><td>ATC code&nbsp;&nbsp;</td><td>Name&nbsp;&nbsp;</td><td>DDD&nbsp;</td><td align="center">&nbsp;U</td><td>&nbsp;Adm.R</td><td>&nbsp;Note</td></tr>
46
+ <tr><td>A03AB01 &nbsp;</td><td><a href="index.php?query=A03AB01&showdescription=yes">Benzilone</a>&nbsp;</td><td align="right">70&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB02 &nbsp;</td><td><a href="index.php?query=A03AB02&showdescription=yes">Glycopyrronium</a>&nbsp;</td><td align="right">3&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td></td><td></td><td align="right">3&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">P&nbsp;</td><td align="right"></td></tr><tr><td></td><td></td><td align="right">3&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">R&nbsp;</td><td align="right"></td></tr><tr><td>A03AB03 &nbsp;</td><td><a href="index.php?query=A03AB03&showdescription=yes">Oxyphenonium</a>&nbsp;</td><td align="right">25&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB04 &nbsp;</td><td><a href="index.php?query=A03AB04&showdescription=yes">Penthienate</a>&nbsp;</td><td align="right">15&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB05 &nbsp;</td><td><a href="index.php?query=A03AB05&showdescription=yes">Propantheline</a>&nbsp;</td><td align="right">60&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td></td><td></td><td align="right">60&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">P&nbsp;</td><td align="right"></td></tr><tr><td>A03AB06 &nbsp;</td><td><a href="index.php?query=A03AB06&showdescription=yes">Otilonium bromide</a>&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right"></td></tr><tr><td>A03AB07 &nbsp;</td><td><a href="index.php?query=A03AB07&showdescription=yes">Methantheline</a>&nbsp;</td><td align="right">0.15&nbsp;</td><td align="right">g&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB08 &nbsp;</td><td><a href="index.php?query=A03AB08&showdescription=yes">Tridihexethyl</a>&nbsp;</td><td align="right">0.125&nbsp;</td><td align="right">g&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB09 &nbsp;</td><td><a href="index.php?query=A03AB09&showdescription=yes">Isopropamide</a>&nbsp;</td><td align="right">10&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB10 &nbsp;</td><td><a href="index.php?query=A03AB10&showdescription=yes">Hexocyclium</a>&nbsp;</td><td align="right">0.15&nbsp;</td><td align="right">g&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB11 &nbsp;</td><td><a href="index.php?query=A03AB11&showdescription=yes">Poldine</a>&nbsp;</td><td align="right">12&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB12 &nbsp;</td><td><a href="index.php?query=A03AB12&showdescription=yes">Mepenzolate</a>&nbsp;</td><td align="right">0.1&nbsp;</td><td align="right">g&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB13 &nbsp;</td><td><a href="index.php?query=A03AB13&showdescription=yes">Bevonium</a>&nbsp;</td><td align="right">0.2&nbsp;</td><td align="right">g&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB14 &nbsp;</td><td><a href="index.php?query=A03AB14&showdescription=yes">Pipenzolate</a>&nbsp;</td><td align="right">20&nbsp;</td><td align="right">mg&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB15 &nbsp;</td><td><a href="index.php?query=A03AB15&showdescription=yes">Diphemanil</a>&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right"></td></tr><tr><td>A03AB16 &nbsp;</td><td><a href="index.php?query=A03AB16&showdescription=yes">(2-benzhydryloxyethyl)diethyl-methylammonium iodide</a>&nbsp;</td><td align="right">0.3&nbsp;</td><td align="right">g&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A03AB17 &nbsp;</td><td><a href="index.php?query=A03AB17&showdescription=yes">Tiemonium iodide</a>&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right"></td></tr><tr><td>A03AB18 &nbsp;</td><td><a href="index.php?query=A03AB18&showdescription=yes">Prifinium bromide</a>&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right"></td></tr><tr><td>A03AB19 &nbsp;</td><td><a href="index.php?query=A03AB19&showdescription=yes">Timepidium bromide</a>&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right"></td></tr><tr><td>A03AB21 &nbsp;</td><td><a href="index.php?query=A03AB21&showdescription=yes">Fenpiverinium</a>&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right"></td></tr><tr><td>A03AB53 &nbsp;</td><td><a href="index.php?query=A03AB53&showdescription=yes">Oxyphenonium, combinations</a>&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right"></td></tr></table></ul>
47
+ </body>
48
+ </html>
@@ -0,0 +1,47 @@
1
+
2
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
3
+
4
+ <html>
5
+ <head>
6
+ <title>ATC/DDD</title>
7
+
8
+ <style type="text/css">
9
+ <!--
10
+
11
+ body,p,td,h1,h2,h3,ol,ul,li,dl,input,a,center,div {font-family: Tahoma, Helvetica, Arial}
12
+ body,p,td,ol,ul,li,dl,input,div.c {font-size: x-small}
13
+
14
+ body {
15
+ scrollbar-face-color : #554488;
16
+ scrollbar-shadow-color : #333366;
17
+ scrollbar-highlight-color : #8877aa;
18
+ scrollbar-3dlight-color : #9999cc;
19
+ scrollbar-darkshadow-color : #000000;
20
+ scrollbar-track-color : #666699;
21
+ scrollbar-arrow-color : #ccccee
22
+ }
23
+
24
+ h2 {color: #000000; font-size: large}
25
+ h3 {color: #554488; font-size: medium}
26
+ h4 {color: #6644aa; font-size: small}
27
+
28
+ a:hover {color:#000099; background:#ccccff; text-decoration: underline}
29
+
30
+ //-->
31
+ </style>
32
+
33
+ </head>
34
+
35
+
36
+ <body bgcolor="#ffffff" text="#000000" link="#6633ff" vlink="#993399">
37
+ <p align="right"><a href="index.php">New search</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?query=A06AA">Hide text from Guidelines</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="index.php?logout=true">Log out</a>&nbsp;&nbsp;&nbsp;&nbsp;</p>A <b><a href="index.php?query=A">ALIMENTARY TRACT AND METABOLISM</a></b><br>
38
+ A06 <b><a href="index.php?query=A06">LAXATIVES</a></b><br>
39
+ A06A <b><a href="index.php?query=A06A">LAXATIVES</a></b><br>
40
+ <p>Laxatives are mainly grouped according to their mode of action. All enemas are classified in A06AG, regardless of mode of action. <br><br>Some combination products are classified at separate levels. These are mentioned in the respective ATC group.<br><br>Otherwise combination products are classified at separate 5th levels using the corresponding 50-series. <br><br>Laxatives in combination with centrally acting antiobesity agents are classified in A08A - Antiobesity preparations, excl. diet products.</p><br>
41
+ A06AA <b><a href="index.php?query=A06AA">Softeners, emollients</a></b><br>
42
+ <p>This group comprises preparations containing liquid paraffin, docusate sodium etc. Docusate potassium is classified at the same 5th level as docusate sodium.<br><br>Combinations with contact laxatives are classified in A06AB, except all liquid paraffin combinations, which are classified in A06AA. <br><br><br><table bgcolor="#cccccc" cellpadding="4" cellspacing="0" border="0"><tr><td>DDDs for e.g. liquid paraffin and castor oil are given using the following unit: g (gram), (1 g = 1 ml for all practical purposes). Preparations classified in A06AA51 - Liquid paraffin, combinations, are all given the same DDD = 3 UD (15 ml), independent of liquid paraffin concentration.<br>The DDD for docusate is based on dose recommendations for docusate sodium.</td></tr></table></p><br>
43
+ <p><ul><table cellpadding="0" cellspacing="0" border="0">
44
+ <tr><td>ATC code&nbsp;&nbsp;</td><td>Name&nbsp;&nbsp;</td><td>DDD&nbsp;</td><td align="center">&nbsp;U</td><td>&nbsp;Adm.R</td><td>&nbsp;Note</td></tr>
45
+ <tr><td>A06AA01 &nbsp;</td><td><a href="index.php?query=A06AA01&showdescription=yes">Liquid paraffin</a>&nbsp;</td><td align="right">15&nbsp;</td><td align="right">g&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A06AA02 &nbsp;</td><td><a href="index.php?query=A06AA02&showdescription=yes">Docusate sodium</a>&nbsp;</td><td align="right">0.15&nbsp;</td><td align="right">g&nbsp;</td><td align="right">O&nbsp;</td><td align="right"></td></tr><tr><td>A06AA51 &nbsp;</td><td><a href="index.php?query=A06AA51&showdescription=yes">Liquid paraffin, combinations</a>&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right">&nbsp;</td><td align="right"></td></tr></table></ul>
46
+ </body>
47
+ </html>