Solved

Problems Displaying Verity Collection Items After Search

Posted on 2003-11-12
3
196 Views
Last Modified: 2013-12-24
I posted a message earlier about the Verity Collection problems i was having.  I have tried another way and I now have a different problem!

At the top of my search I have the following value:
5 advertisement(s) matched your query.

This obviously means that the search has found records matching the criteria i entered.  However the search refuses to display the results and i get this error:

Variable EXPIRYDATE is undefined.

you can replace the variable EXPIRYDATE with any of the table variables in my database - it's all the same.

here is my code:

<cfsearch collection="adVerityCollection" name="findAds" criteria="#keywords#">
      <CFIF findads.RecordCount GT 0>
      <CFoutput query = "findAds">
      <B>#findads.RecordCount#</B> advertisement(s) matched your query.
            <P>
            <a href="advertdetails.cfm?adnum=#key#">#expirydate#</a><BR>
      </CFOUTPUT>
      <CFELSE>
      Sorry, No records were returned from your request.
      </CFIF>

here is the code which i used to update the verity collection:

 <cfquery name="get_db_info" datasource="advertisements">
      select *
       from ads
  </cfquery>

<cfindex query="get_db_info"
            collection="adVerityCollection"
            action="update"
            type="custom"
            key="adnumber"
            title="adverttitle"
            body="sellername, adverttitle, emailaddress, dateentered, expirydate, advertisementcontents, category, region">

  Your Collection has been updated.

------

The collection updates without any problems and as i said earlier the search is obviously finding records matching the entered criteria - it's just that it doesnt display any of the fields which are in the database table which i thought i had set up correctly with the update verity code.

Cheers
0
Comment
Question by:crazy_diamond
3 Comments
 
LVL 4

Accepted Solution

by:
procept earned 30 total points
ID: 9753303
Hi,

with verity seaches you can only output the verity fields, not the DB fields. The verity fields usually are
CUSTOM1, CUSTOM2, KEY, RECORDSSEARCHED, SCORE, SUMMARY, TITLE, URL.

To use the custom fields, you can assign field names to the custom attributes (here I moved the expirydate from the body to custom field 1):

<cfindex query="get_db_info"
            collection="adVerityCollection"
            action="update"
            type="custom"
            key="adnumber"
            title="adverttitle"
            body="sellername, adverttitle, emailaddress, dateentered, advertisementcontents, category, region"
            custom1="expirydate">

But, custom fields are not searched in simple queries! If you want to search for the expirydate, you must have it in body, too.

HTH,

Chris


0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

A web service (http://en.wikipedia.org/wiki/Web_service) is a software related technology that facilitates machine-to-machine interaction over a network. This article helps beginners in creating and consuming a web service using the ColdFusion Ma…
Introduction This article explores the design of a cache system that can improve the performance of a web site or web application.  The assumption is that the web site has many more “read” operations than “write” operations (this is commonly the ca…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

832 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question