Hi again,
I've traced the problem to this point:
__________________________________________________
(class QuantityWrapper)

public Object getValue() {
                // TODO: should be context dependent-> return default val or 
actual  
etc..
                QuantityInfo info = new QuantityInfo();
                
                if(!wrappedObject.isAnyAllowed()){
                        //a cdv quantity has a list which contains 
cdvquantityitems
                        List<CDvQuantityItem> qitems =  
((CDvQuantity)wrappedObject).getList();
                        String currentUnit = null;
                        if(!(qitems == null || qitems.size() < 1)){
                                String[] items = getUnitsForWrappedQuantity();  
                        
                                for(String s : items){
                                        info.units.add(s);
                                }
                                //TODO for the moment, I can't see how I can 
get the current unit?  
so I'm using
                                //the first one...
                                info.setCurrentUnit(info.units.get(0));
                                
                        }                                                       
                        
                }
                if (dataValue != null){
                        String magnitude =  
String.valueOf(((DvQuantity)dataValue).getMagnitude());
                        //***********
HERE WE SHOULD SET THE CURRENT VALUE BUT WE DONOT....
*//////////////
                        
                        info.setMagnitude(magnitude);
                }
                else
                        info.setMagnitude("");
                return info;            
        }
_______________________________________________________
So the problem is that for any row I retreive from DB (any quantity  
item) the currentUnit is null which prevents getGUITestString() of  
sending the proper String which is magnitude + unit
I do not actually understand the logic of this piece of code...

-Pariya

On Mar 26, 2010, at 3:02 PM, Pariya Kashfi wrote:

> Hi there,
> I'm trying to save and load archetype data for a sample observation  
> which includes boolean and quantity as well.
> .............
> String cellDifferentiation = "/data[at0001]/events[at0002]/ 
> data[at0003]/items[at0006]/items[at0069]/value";
> String ana = "/data[at0001]/events[at0002]/data[at0003]/ 
> items[at0006]/items[at0063]/value/value";
> String ra = "/data[at0001]/events[at0002]/data[at0003]/items[at0006]/ 
> items[at0064]/value/value";
> .........
>
> pArchetypeWrapper 
> .getElementAtNode(cellDifferentiation).setMagnitudeOfQuantity("100");
> pArchetypeWrapper 
> .getElementAtNode(cellDifferentiation).setUnitOfQuantity("ml");
> pArchetypeWrapper.getElementAtNode(ana).setBooleanValue("False");
> pArchetypeWrapper.getElementAtNode(ra).setBooleanValue("True");
>
> I'm actually able to save data in DB but when I run the sample  
> opereffa code to load and print data into console,
> ..........
> wrapperToLoadData.loadFromPOJO(archetypeDatas);
> System 
> .out.println(wrapperToLoadData.getRootWrapper().getGUITestString());
>
>  But I can just retrieve boolean values. it sounds somewhere I loose  
> value (numbers) for quantity elements...
> Any idea about the reason?
>
>
> Regards
> Pariya
>
> MSc; PhD Candidate
> Department of Computing  Science and Engineering
> Chalmers University of Technology
> http://www.chalmers.se/cse/EN/people/kashfi-hajar
>
>
>
>
>
>
> <ATT00001..txt>

Regards
Pariya

MSc; PhD Candidate
Department of Computing  Science and Engineering
Chalmers University of Technology
http://www.chalmers.se/cse/EN/people/kashfi-hajar






-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://lists.openehr.org/mailman/private/openehr-technical_lists.openehr.org/attachments/20100327/de74f2a9/attachment.html>

Reply via email to