Hi,

You should also fix the memory-leak and erroneous assignment of the
string. It has no immediate impact, but it is wrong.

Current:
 IdLst.entryIdList=(AREntryIdType *)malloc(sizeof(AREntryIdType));
 IdLst.entryIdList=ticketId;
Should read something like:
 IdLst.entryIdList=(AREntryIdType *)malloc(sizeof(AREntryIdType));
 strncpy(IdLst.entryIdList[0], ticketId, sizeof(ARENtryIdType) - 1);

I think you are just lucky that the pointer to the first array element is
the same as the pointer to the first byte of the string...

        Best Regards - Misi, RRR

> Hello Thilo,
>
> There was a space in the ticket id as pointed out by you.
>
> Thanks it is working now after removing that blank space :)
>
>
> With Regards,
> Anuj Dua
>
> -----Original Message-----
> From: Action Request System discussion list(ARSList)
> [mailto:[email protected]] On Behalf Of Thilo Stapff
> Sent: Tuesday, May 18, 2010 2:40 PM
> To: [email protected]
> Subject: Re: Critical: Getting ARERR 121 while Using C API ARSetEntry
>
> Hi,
>
>
> strcpy(IdLst.entryIdList[0], ticketId);
>
> is probably the correct one (though you should always check the length
> of ticketId beforehand).
>
> Looking at the log messages, I noticed that there is a space character
> appended to the ticketId, probably originating from the SELECT statement
> in CreateBatch.pc, which of course might be a problem.
>
>
> Regards,
> Thilo Stapff
>
>
> On 18.05.2010 10:37, Anuj DUA wrote:
>> Hi,
>>
>> I have tried :
>> strcpy(IdLst.entryIdList[0], ticketId);
>> and also
>> strcpy(IdLst.entryIdList, ticketId);
>>
>> it gives error, as ticketid is pointer.
>>
>> I have checked the content before calling API, it gives correct ID.
>>
>> Please find below the logs:
>>
>> [Tue May 18 10:21:07 2010] Starting RIF monitor...
>> --- Configuration Details ---
>> SERVER NAME : euxb91.sgp.st.com
>> USER   NAME : Demo
>> PASSWORD    : live2002
>> SCHEMA NAME : HPD:HelpDesk
>> BACKUP SERVER NAME : eux180.sgp.st.com
>> --- Configuration Details ---
>> [Tue May 18 10:21:07 2010] Connecting database dlh_rif/useme...@s2qa...
>> [Tue May 18 10:21:08 2010] Modify Ticket Ticket_ID : QA0000004937103
>> [1]: fields passed
>> [QA0000004937103 ]: TicketID
>> Initializing session with primary server [euxb91.sgp.st.com]...
>> ERROR [2]: calling ARSetEntry()...
>> ERROR MESSAGE : Error with an entry in the Entry ID list Appended Text:
>> [Tue May 18 10:21:08 2010] Error in modifying a Ticket
>> G_CtrlStruct.server[euxb91.sgp.st.com]
>> [Tue May 18 10:22:27 2010] Modify Ticket Ticket_ID : QA0000004929015
>> [1]: fields passed
>> [QA0000004929015 ]: TicketID
>> Initializing session with primary server [euxb91.sgp.st.com]...
>> ERROR [2]: calling ARSetEntry()...
>> ERROR MESSAGE : Error with an entry in the Entry ID list Appended Text:
>> [Tue May 18 10:22:27 2010] Error in modifying a Ticket
>> G_CtrlStruct.server[euxb91.sgp.st.com]
>>
>>
>> With Regards,
>> Anuj Dua
>>
>>
>> -----Original Message-----
>> From: Action Request System discussion list(ARSList)
>> [mailto:[email protected]] On Behalf Of Misi Mladoniczky
>> Sent: Tuesday, May 18, 2010 1:52 PM
>> To: [email protected]
>> Subject: Re: Critical: Getting ARERR 121 while Using C API ARSetEntry
>>
>> Hi,
>>
>> I do not know, but have you checked the content if the request-id before
>> the call?
>>
>> I would have liked to see the logfile, as it should contain ample
>> information on what happens.
>>
>> Exactly which OS are you running on?
>>
>> Have you tried compiling the driver-program and performing a Set-Entry
>> from there to see if it works?
>>
>> Compile a minimum program with hard-coded values to see if you can get
>> your code to work such as:
>>
>> ARControlStruct c;
>> AREntryIdList IdLst;
>> strcpy(c.server, "xxx")
>> ...
>> IdLst.numItems=1;
>> IdLst.entryIdList=(AREntryIdType *)malloc(sizeof(AREntryIdType));
>> IdLst.entryIdList=ticketId;
>> ARInitialization()
>> ARSetEntry()
>> ARTermination()
>>
>> Looking at this code, I see that you are overwriting the allocated
>> buffer
>> with the following code line:
>> IdLst.entryIdList=ticketId;
>>
>> I would write someting like this:
>> strcpy(IdLst.entryIdList[0], ticketId);
>>
>>          Best Regards - Misi, RRR AB, http://www.rrr.se
>>
>> Products from RRR Scandinavia:
>> * RRR|License - Not enough Remedy licenses? Save money by optimizing.
>> * RRR|Log - Performance issues or elusive bugs? Analyze your Remedy
>> logs.
>> Find these products, and many free tools and utilities, at
>> http://rrr.se.
>>
>>> Hi,
>>>
>>> Please find the file attached.
>>> OS is Unix.
>>>
>>> With Regards,
>>> Anuj Dua
>>>
>>> -----Original Message-----
>>> From: Action Request System discussion list(ARSList)
>>> [mailto:[email protected]] On Behalf Of Misi Mladoniczky
>>> Sent: Tuesday, May 18, 2010 12:52 PM
>>> To: [email protected]
>>> Subject: Re: Critical: Getting ARERR 121 while Using C API ARSetEntry
>>>
>>> Hi,
>>>
>>> First you must give us some info or snippet from your code.
>>>
>>> Specifically the ARSetEntry-call in itself, and enough to understand
>>> how
>>> you are putting the Request ID list together.
>>>
>>> Secondly, the OS where you run your client can be useful.
>>>
>>>          Best Regards - Misi, RRR AB, http://www.rrr.se
>>>
>>> Products from RRR Scandinavia:
>>> * RRR|License - Not enough Remedy licenses? Save money by optimizing.
>>> * RRR|Log - Performance issues or elusive bugs? Analyze your Remedy
>>> logs.
>>> Find these products, and many free tools and utilities, at
>>> http://rrr.se.
>>>
>>>> Hello,
>>>>
>>>> While modifying ticket using C API "ARSetEntry", I am getting ARERR
>>>> 121
>>>> (Entry error in the Request ID list.)
>>>>
>>>> Please suggest what should be done.
>>>>
>>>> ARS configuration : 6.3
>>>>
>>>> With Regards,
>>>> Anuj Dua
>>>>
>>>>
>>>> _______________________________________________________________________________
>>>> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
>>>> attend wwrug10 www.wwrug.com ARSlist: "Where the Answers Are"
>>>>
>>>> --
>>>> This message was scanned by ESVA and is believed to be clean.
>>>>
>>>>
>>>
>>> _______________________________________________________________________________
>>> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
>>> attend wwrug10 www.wwrug.com ARSlist: "Where the Answers Are"
>>>
>>> _______________________________________________________________________________
>>> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
>>> attend wwrug10 www.wwrug.com ARSlist: "Where the Answers Are"
>>>
>>> --
>>> This message was scanned by ESVA and is believed to be clean.
>>>
>>>
>>
>> _______________________________________________________________________________
>> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
>> attend wwrug10 www.wwrug.com ARSlist: "Where the Answers Are"
>>
>> _______________________________________________________________________________
>> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
>> attend wwrug10 www.wwrug.com ARSlist: "Where the Answers Are"
>>
>>
>
> _______________________________________________________________________________
> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
> attend wwrug10 www.wwrug.com ARSlist: "Where the Answers Are"
>
> _______________________________________________________________________________
> UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
> attend wwrug10 www.wwrug.com ARSlist: "Where the Answers Are"
>
> --
> This message was scanned by ESVA and is believed to be clean.
>
>

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
attend wwrug10 www.wwrug.com ARSlist: "Where the Answers Are"

Reply via email to