Hi Lukas,
I tried to follow functions call and I reached the function
SetValueInternal() in which value is correctly processed with the right
length.
In fact value is passed to function setAsString of the class TItemField.
Regards
2011/9/28 Lukas Zeller <luz(a)plan44.ch>
Hello Roger,
On Sep 28, 2011, at 10:26 , Roger KeIrad wrote:
> I am trying to develop the readItemAsKey() function in my sqlite backend
for calendar wusing the setValue() api.
> The function doesn't return anyy error but there is no field inserted in
xml logs. I just have an embty VCAL :
> <![CDATA[BEGIN:VCALENDAR
> VERSION:1.0
> END:VCALENDAR
> ]]>
>
> Do I miss any config or a something like that?
> This is what I wrote :
> if(sysync::LOCERR_OK != getSynthesisAPI()->setValue(aItemKey,
"SUMMARY",
"My event")){
> printf("Cannot set field <SUMMARY> \n");
> }
> The type of field "SUMMARY" is multiligne does it differ from type
string?
No, multiline differs only in terms of internal processing, but for the API
it is just a string. So I'd assume it should work.
I'm not familiar with the setValue() wrapper you are using here, but if it
translates to using libsynthesis' SetValue() using VALTYPE_TEXT as the value
type and either -1 as aValSize (to automatically detect the length of a
NUL-terminated input string) or the real lenght of the string in the
aBuffer, I see no reason why it should not work.
Maybe you can step into the processing of your setValue() with the debugger
until you see what exactly is passed to libsynthesis' SetValue(), especially
the aBuffer value.
Best Regards,
Lukas Zeller