Hi Geert,

I understand what you are saying but in my example i have not been trying to
search the updated result it's just that after running the update program i
look into that particular document record using cq , i just want my update
to perform, i may be asking too much but kindly look into

update-main-searchresult.xqy and search for lines

let $book :=
mysearch-lib:find-forUpdate(xdmp:get-request-field("title"),xdmp:get-request-field("price"))

            return

            <form action="update-write.xqy">
            <p>
            <input type="hidden" name="calculatedUri"
value="{(xdmp:node-uri($book))}"/>

my first question is this a right way of finding uri , which i know is fine
but i want to know your opinion especially on passing
the calculated Uri in hidden field

so when in update-write.xqy i try to get that value will i get it using
xdmp:get-request-field("calculatedUri"),


and after that my second question is how do i make a call to a function
present in my search-lib.xqy which does not return any value inside body of
update-write.xqy as when i do so it just comes as body part printing out as
text.


looking forward to your response.
regards
Rahul saluja


On Mon, Oct 12, 2009 at 10:36 PM, Geert Josten <[email protected]>wrote:

> Hi Rahul,
>
> With just a very brief glance over your attachments, I think you are
> confused by the timestamp mechanism of MarkLogic Server. Any transaction
> works against a particular timestamp. This doesn't affect updates, but does
> affect reading actions. You can never read what you update in the same
> transaction. You will either have to do your read actions in a sub query
> (eval with different-transaction option), or break your query in two (two
> pass execution, or a semi-colon somewhere in the middle)..
>
> HTH,
> Geert
>
> >
>
>
> Drs. G.P.H. Josten
> Consultant
>
>
> http://www.daidalos.nl/
> Daidalos BV
> Source of Innovation
> Hoekeindsehof 1-4
> 2665 JZ Bleiswijk
> Tel.: +31 (0) 10 850 1200
> Fax: +31 (0) 10 850 1199
> http://www.daidalos.nl/
> KvK 27164984
> De informatie - verzonden in of met dit emailbericht - is afkomstig van
> Daidalos BV en is uitsluitend bestemd voor de geadresseerde. Indien u dit
> bericht onbedoeld hebt ontvangen, verzoeken wij u het te verwijderen. Aan
> dit bericht kunnen geen rechten worden ontleend.
>
>
> > From: [email protected]
> > [mailto:[email protected]] On Behalf Of
> > Rahul Saluja
> > Sent: maandag 12 oktober 2009 18:26
> > To: General Mark Logic Developer Discussion
> > Subject: [MarkLogic Dev General] help on updating node
> >
> > hello all,
> >
> > I am trying to update a particular element in an xml document
> > using node-replace api, in the process of it i have been
> > doing couple of things
> >
> > here is the flow after getting the result from search i call
> > another query named update-write.xqy , which in turns call my
> > function to update the data into the database in process of
> > doing so i am not getting any error nor my data is getting
> > updated, i am attaching code for your reference for the same
> > as i don't want this post to be too big .
> > i am thinking culprit is me trying to find uri using
> >
> > <input type="hidden" name="calculatedUri"
> > value="{(xdmp:node-uri($book))}"/>
> >
> > consider starting point as
> >
> > 1)update-main-searchresult.xqy
> > which is calling
> > update-write.xqy on submit action
> >
> > 2) in update-write.xqy i am calling a function written in my
> > another module which is supposed to update the data but call
> > is not reaching there as in browser i can see title of
> > update-main-searchresult.xqy
> >
> > i know its bit messy, but this is first time i amputting my
> > hands on it.
> >
> >
> > please help me.
> >
> > looking forward to your response.
> >
> > regards
> > Rahul
> >
> >
>
> _______________________________________________
> General mailing list
> [email protected]
> http://xqzone.com/mailman/listinfo/general
>
_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general

Reply via email to