I'm currently working on, making a SR using Numeric measurement values.
I use the report generation program provided by dcmtk : mkreport. I added a new report creation and tried to add some numeric measurements.
The problem is that when generating code, i obtain all the nodes in the command line informations :
As you'll see, the num aren't there... is there any reason?
it has been generated by this code :-------------------------------------------------------------------------------
mkreport : reportec.dcm
Basic Text SR Document
Patient : Meguira^Alberto (M)
Referring Physician: Pululu^Joseph
Completion Flag : COMPLETE
Verification Flag : VERIFIED
20050513123710: Augustus Caesar^Gaius Iulius Octavianus, Dr. Laurent
Content Date/Time : 20050513 123710
<CONTAINER:(,,"Test Echo")=SEPARATE>
<contains CONTAINER:(,,"Patient Characteristics")=SEPARATE>
<contains CONTAINER:(,,"Findings")=SEPARATE>
<contains CONTAINER:(,,"Measurement Group")=SEPARATE>
<contains CODE:(,,"Cardiac Output")=(IHE.03,99_OFFIS_DCMTK,"2D")>
<has concept mod CODE:(,,"Method")=(IHE.03,99_OFFIS_DCMTK,"Teicholz")>
<has concept mod CODE:(,,"Method")=(IHE.19,99_OFFIS_DCMTK,"Teicholz")>
Code: Select all
static void generate_echo(DSRDocument *doc)
{
doc->createNewDocument(DSRTypes::DT_BasicTextSR);
doc->createNewSeriesInStudy("1.2.276.0.7230010.3.4.1915765545.18030.917282194.11");
doc->setStudyDescription("Medicasoft Echo cardiography test SR");
doc->setSeriesDescription("Fake Report, Test of EchoCardioGraphy");
doc->setPatientsName("Meguira^Alberto");
doc->setPatientsSex("M");
doc->setReferringPhysiciansName("Pululu^Joseph");
doc->getTree().addContentItem(DSRTypes::RT_isRoot, DSRTypes::VT_Container);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_0.1", OFFIS_CODING_SCHEME_DESIGNATOR, "Test Echo"));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Container, DSRTypes::AM_belowCurrent);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_2.1", OFFIS_CODING_SCHEME_DESIGNATOR, "Patient Characteristics"));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Container);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("CH_3.1", OFFIS_CODING_SCHEME_DESIGNATOR, "Findings"));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Container, DSRTypes::AM_belowCurrent);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("CH_4.1", OFFIS_CODING_SCHEME_DESIGNATOR, "Measurement Group"));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Code, DSRTypes::AM_belowCurrent);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("IHE.02", OFFIS_CODING_SCHEME_DESIGNATOR, "Image Mode"));
doc->getTree().getCurrentContentItem().setCodeValue(DSRCodedEntryValue("IHE.03", OFFIS_CODING_SCHEME_DESIGNATOR, "2D"));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Num);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_4.3", OFFIS_CODING_SCHEME_DESIGNATOR, "LVDd"));
doc->getTree().getCurrentContentItem().setNumericValue(DSRNumericMeasurementValue ("45", DSRCodedEntryValue("MS.02", OFFIS_CODING_SCHEME_DESIGNATOR, "mm"), DSRCodedEntryValue("MS0.0.7", OFFIS_CODING_SCHEME_DESIGNATOR, "LVDd")));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Num);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_4.3", OFFIS_CODING_SCHEME_DESIGNATOR, "LVDs"));
doc->getTree().getCurrentContentItem().setNumericValue(DSRNumericMeasurementValue ("37", DSRCodedEntryValue("MS.02", OFFIS_CODING_SCHEME_DESIGNATOR, "mm"), DSRCodedEntryValue("MS0.0.6", OFFIS_CODING_SCHEME_DESIGNATOR, "LVDs")));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Num);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_4.4", OFFIS_CODING_SCHEME_DESIGNATOR, "LV Vol d"));
doc->getTree().getCurrentContentItem().setNumericValue(DSRNumericMeasurementValue ("154", DSRCodedEntryValue("MS.02", OFFIS_CODING_SCHEME_DESIGNATOR, "mm?"), DSRCodedEntryValue("MS0.0.5", OFFIS_CODING_SCHEME_DESIGNATOR, "LV Vol d")));
doc->getTree().addContentItem(DSRTypes::RT_hasConceptMod, DSRTypes::VT_Code, DSRTypes::AM_belowCurrent);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS6.1", OFFIS_CODING_SCHEME_DESIGNATOR, "Method"));
doc->getTree().getCurrentContentItem().setCodeValue(DSRCodedEntryValue("IHE.03", OFFIS_CODING_SCHEME_DESIGNATOR, "Teicholz"));
doc->getTree().goUp();
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Num);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_9.4", OFFIS_CODING_SCHEME_DESIGNATOR, "LV Vol s"));
doc->getTree().getCurrentContentItem().setNumericValue(DSRNumericMeasurementValue ("114", DSRCodedEntryValue("MS.15", OFFIS_CODING_SCHEME_DESIGNATOR, "mm*mm*mm"), DSRCodedEntryValue("MS0.0.4", OFFIS_CODING_SCHEME_DESIGNATOR, "LV Vol s")));
doc->getTree().addContentItem(DSRTypes::RT_hasConceptMod, DSRTypes::VT_Code, DSRTypes::AM_belowCurrent);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS9.5", OFFIS_CODING_SCHEME_DESIGNATOR, "Method"));
doc->getTree().getCurrentContentItem().setCodeValue(DSRCodedEntryValue("IHE.19", OFFIS_CODING_SCHEME_DESIGNATOR, "Teicholz"));
doc->getTree().goUp();
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Num);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_10.1", OFFIS_CODING_SCHEME_DESIGNATOR, "Stroke Volume"));
doc->getTree().getCurrentContentItem().setNumericValue(DSRNumericMeasurementValue ("12", DSRCodedEntryValue("MS.15", OFFIS_CODING_SCHEME_DESIGNATOR, "mm*mm*mm"), DSRCodedEntryValue("MS0.0.3", OFFIS_CODING_SCHEME_DESIGNATOR, "Stroke Vol")));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Num);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_10.2", OFFIS_CODING_SCHEME_DESIGNATOR, "Shortening Fraction"));
doc->getTree().getCurrentContentItem().setNumericValue(DSRNumericMeasurementValue ("14", DSRCodedEntryValue("MS.16", OFFIS_CODING_SCHEME_DESIGNATOR, "mm*mm*mm"), DSRCodedEntryValue("MS0.0.2", OFFIS_CODING_SCHEME_DESIGNATOR, "short. frac.")));
doc->getTree().addContentItem(DSRTypes::RT_contains, DSRTypes::VT_Num);
doc->getTree().getCurrentContentItem().setConceptName(DSRCodedEntryValue("MS_10.3", OFFIS_CODING_SCHEME_DESIGNATOR, "Cardiac Output"));
doc->getTree().getCurrentContentItem().setNumericValue(DSRNumericMeasurementValue ("145", DSRCodedEntryValue("MS.17", OFFIS_CODING_SCHEME_DESIGNATOR, "l*s"), DSRCodedEntryValue("MS.0.1", OFFIS_CODING_SCHEME_DESIGNATOR, "Card. output")));
doc->completeDocument();
doc->verifyDocument("Augustus Caesar^Gaius Iulius Octavianus", "Dr. Laurent");
}
________
hemp marijuana
________
ZL900A