I did a SQL trace on MEL_ADD_CONTENT() and all of the information is contained in a soap envelope and handled by the service layer. Does anyone happen to know where this information is being stored at when you call MEL_ADD_CONTENT() or MEL_GET_CONTENT()?
I'm curious about this MEL symbol. It is not in CPS 12 Help Symbol list. Is it still a supported symbol. What is it supposed to do?
MEL_ADD_CONTENT(), MEL_GET_CONTENT(), and MEL_REMOVE_CONTENT() are used by a lot of GE's HTML Forms to store their default data to be parsed. Similar to how they used to store their data in the CCC files that could be manipulated to add diagnoses or orders. I assume the performance is better with this new way of storing content.
You can add pretty much anything you want to it, but GE uses it like so: MEL_Add_Content("GE.CARE.PROB^1001^ICD-401.1~ICD10-I10^^^^^^")
MEL_Add_Content("GE.CARE.PROB.1001.goal^goal1^Maintain Systolic Blood Pressure.^^^^^1^")
MEL_Add_Content("GE.CARE.PROB.1001.goal.goal1^target^90 - 120mmHg^^^^^^")
MEL_Add_Content("GE.CARE.PROB.1001.instr^inst1^Diet high in soluble Fiber.^^^^^1^")
Where they add a problem with ID 1001 and add some goals and instructions based on that problem. I haven't tested whether you can add more ^ or not or if it is just simply a string and you don't even need the ^. They will call the data using MEL_GET_CONTENT(match_str, match_type):
MEL_GET_CONTENT("GE.CARE.PROB","contains")
Which would return all that data above and anything else you have stored under GE.CARE.PROB:
1786363728307070^GE.CARE.PROB^1001^ICD-401.1~ICD10-I10^^^^^^|1786363729307570^GE.CARE.PROB.1001.goal^goal1^Maintain Systolic Blood Pressure.^^^^^1^|1786363729307610^GE.CARE.PROB.1001.goal.goal1^target^90 - 120mmHg^^^^^^|1786363729307650^GE.CARE.PROB.1001.instr^inst1^Diet high in soluble Fiber.^^^^^1^
MEL_REMOVE_CONTENT(id) does what you think it would, but you have to send it the id (string) that appears when you call MEL_GET_CONTENT().
To answer the question about where this is stored, it is in the "CONTENTLIST" table in the DB.
Where do you modify the forms to add content? I have 2 entries I have added to the Immunizations form for reasons the immunization was not given, but the only way I could find to do it was to add them to the CONTENTLIST table. Every time a KB is updated my values are removed and I have to go back and add them again.
I am wondering if this ML function is something we are supposed to have access to and if so where would I put these values? Once the values are added will they go away like they do when I manually insert them in the DB? The value I am updating is GE.IMM.MASTER.REASON.
Awesome! Thanks for letting me know.
As far as I know, you can't modify the content lists through MEL. You can only use MEL_REMOVE_CONTENT(id) and add another entry with MEL_ADD_CONTENT(data). GE has Text Components that will basically empty out every entry and re-add their values. This may be something could be happening in your case. Here is an example of what the Care Plan - Configuration Data text component does:
local cp_list,i, tmp_cp_list, temp_cp_id
cp_list = MEL_GET_CONTENT("GE.CARE","contains")
if cp_list"" then
tmp_cp_list = getfield(str(cp_list),"|","")
for i=1, i<=size(tmp_cp_list), i=i+1 do
temp_cp_id = getfield(str(tmp_cp_list[i]),"^","")
MEL_REMOVE_CONTENT(str(temp_cp_id[1]))
endfor
else
""
endif
They are removing all content related to GE.CARE, and then they will re-add their defaults.
I was hoping there was a way to use MEL_ADD_CONTENT() to load additional values into GE.IMM.MASTER.REASON but as far as I can tell the Care Plan - Configuration data is the only Text Component to even have MEL_Add_Content in it. (verified by running: select * from hierobjs where text like '%MEL_Add%')
I really don't like having to modify sql when I don't have to but we could not find a way and GE doesn't provide us with the ability to make the reason not given as Allergy or Vaccine not available.
I don't doubt that somewhere there is something that runs the mel_add and mel_remove commands to clear out the data. It is just frustrating that GE does not give us access to it.