Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsGeneralPHPASPPerlColdFusionFlashHTML, CSS, ScriptsBrowsers

Webmaster Forum / ColdFusion / General CF Topics / August 2008



Tip: Looking for answers? Try searching our database.

How to Insert Blank Record in Array?

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Art of Zen - 28 Aug 2008 17:55 GMT
I have a function shown below that is part of a two selects related Component.  
My first problem is if no data is passed to the argument, the select field
bound to the function is very tiny (I would like it to have a default width).  
Adding a "width" does not work.

SECONDLY, if there is data passed to the argument (in Arguments.accountID, i
would like to have a blank record inserted at the top of the select list
results.  So in summary, if no data is passed to the argument, the select field
is very small.  If data is passed to the argument, the select list is
populated, but I need to have a blank record (option) at the top of the select
list.

The code for the function shown below:

<cffunction name="getUsers" access="remote" returnType="array">
  <cfargument name="accountID" type="string" required="yes">
  <!--- Define variables --->
  <cfset var data="">
  <cfset var result=ArrayNew(2)>
  <cfset var i=0>
  <cfset data1= oSF.QueryObject("select ID , name, Email, ACCOUNTID__C from
User").results>
 
    <cfquery dbtype="query" name="data">
   SELECT ID, NAME, ACCOUNTID__C
 FROM DATA1
 WHERE ACCOUNTID__C = '#arguments.accountID#'
   </cfquery>
 
 
  <!--- Convert results to array --->
  <cfloop index="i" from="1" to="#data.recordcount#">
    <cfset result[i][1]=data.id[i]>
    <cfset result[i][2]=data.name[i]>
  </cfloop>
  <!--- And return it --->
  <cfreturn result >
</cffunction>

[B]Code for select list:[/B]

<cfselect name="Contacts"
                        bind="cfc:getPartners.getUsers({mediaid})"
tooltip="Select Partner Rep" onError=""
                         width="50"/>
Azadi - 28 Aug 2008 18:02 GMT
1) style="width:50px;"

2)
<cfif data.recordcount>
  <cfset result[1][1] = "">
  <cfset result[1][2] = "">
  <!--- Convert results to array --->
  <cfloop index="i" from="1" to="#data.recordcount#">
    <cfset result[i+1][1]=data.id[i]>
    <cfset result[i+1][2]=data.name[i]>
  </cfloop>
</cfif>

hth

Azadi Saryev
Sabai-dee.com
http://www.sabai-dee.com/
Art of Zen - 28 Aug 2008 23:31 GMT
Thanks for the style answer!  the array did not work, but your solution for adding a style to the select certainly helped!
Dan Bracuk - 28 Aug 2008 19:39 GMT
Change this:

SELECT ID, NAME, ACCOUNTID__C
FROM DATA1
WHERE ACCOUNTID__C = '#arguments.accountID#'

to this
select distinct '' id, '' name, '' accountid_c
from some_small_table
union
SELECT ID, NAME, ACCOUNTID__C
FROM DATA1
WHERE ACCOUNTID__C = '#arguments.accountID#'
order by id

if any of those fields are not text, use whatever db function is appropriate
to convert to string in the bottom half of the query
Art of Zen - 28 Aug 2008 23:29 GMT
Thank you!  This was the answer for inserting that blank record!
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.