Would love to know how many Atlanta companies are still using CF.

John

On Thu, Sep 1, 2016, 7:49 AM Wes Byrd <w...@dynapp.com> wrote:

> Blast from the past!  :-)    It’s good to “see” this in use.  Though I
> rarely replied, I too used to enjoy reading and keeping in the loop of
> issues and questions others had.  ...  That and Whirleyball!  Miss those
> days.  :-P
>
>
>
> To Frank’s question, from your examples, it does appear to be a change in
> functionality.  I was never a fan of using <cfset blablabla =
> someFunctionHere() /> syntax myself.  It just makes me feel… dirty or
> something. :-P   I would rather do #someFunctionHere()# or toss in a
> <cfscript> tag… even if it is just one line.  I wonder if the same thing
> happens if you use the CFSCRIPT block?
>
>
>
> Wes Byrd
>
>
>
>
>
> *From:* ad...@acfug.org [mailto:ad...@acfug.org] *On Behalf Of *Frank
> Moorman
> *Sent:* Wednesday, August 31, 2016 8:46 PM
>
>
> *To:* discussion@acfug.org
> *Subject:* Re: [ACFUG Discuss] Hopefully this list still exists
>
>
>
> Charlie,
>
> Here is the actual code (though the SQL is a little slimmed down for
> clarity.)
>
> <!--- Update Draw Items --->
> <cfset UpdateString = '0'>
> <cfloop index="loopix" from="1" to="#ArrayLen(arguments.DrawIds)#">
>     <cfquery name="UpdateDraw" datasource="#session.DBsource#">
>         UPDATE tbl_inspection_form_draws
>            SET last_user            = <cfqueryparam
> cfsqltype="CF_SQL_SMALLINT" value="#session.UserID#">,
>                draw_note            = <cfqueryparam
> cfsqltype="CF_SQL_VARCHAR" value="#arguments.DrawNotes[loopix]#"
> maxlength="200">,
>                completion_percent   = <cfqueryparam
> cfsqltype="CF_SQL_TINYINT" value="#Val(arguments.CompPercent[loopix])#">,
>                prior_completion_percent = <cfqueryparam
> cfsqltype="CF_SQL_TINYINT"
> value="#Val(arguments.OrigCompPercent[loopix])#">,
>                last_inspection_date = <cfqueryparam
> cfsqltype="CF_SQL_TIMESTAMP" value="#InspectionDateTime#">,
>                last_update          = <cfqueryparam
> cfsqltype="CF_SQL_TIMESTAMP" value="#CurrentDateTime#">
>          WHERE draw_id = <cfqueryparam cfsqltype="CF_SQL_INTEGER"
> value="#arguments.DrawIds[loopix]#">;
>     </cfquery>
>     <cfset devnull = ListAppend(UpdateString,arguments.DrawIds[loopix])>
> </cfloop>
> <cfquery name="PriorPercentUpdate" datasource="#session.DBsource#">
>     UPDATE tbl_inspection_form_draws
>        SET prior_completion_percent = <cfqueryparam
> cfsqltype="CF_SQL_TINYINT"   value="100">,
>            status                   = <cfqueryparam
> cfsqltype="CF_SQL_CHAR"      value="C" maxlength="1">,
>            last_update              = <cfqueryparam
> cfsqltype="CF_SQL_TIMESTAMP" value="#CurrentDateTime#">
>      WHERE inspection_form_id       = <cfqueryparam
> cfsqltype="CF_SQL_INTEGER" value="#arguments.FormID#">
>        AND draw_id                  NOT IN
> (#UpdateString#)
> </cfquery>
>
> As you can tell The ListAppend is right in the middle. Essentially I am
> updating an inspection form. Arrays with the values of every line item
> changed are passed into this function. The list is used to create a comma
> separated value of every line item id that was updated. The value is then
> used in the second query to make changes to every line item not updated
> within the specified inspection form.
>
> After the code was moved to the new CF11 server (from a CF10 server) We
> noticed that the prior completion percent was set to 100 in every case (and
> tracked it down to the 2nd query here.) According to the svn log, the
> component containing this code has not changed since 6/27/2014. (and I know
> this particular section was not changed in a longer period of time.)
>
> In tracking down the error and determining exactly what happened I
> basically added a result attribute to the queries and dumped them to verify
> that the proper values where being initially set and added a bunch of dumps
> for the other variables.. I also added a SELECT statement to verify that
> there was not some weird database connector problem on the new server.
>
>     <cfquery name="UpdateDraw" datasource="#session.DBsource#"
> result="xxxx">
>     </cfquery>
>     <cfdump var="#xxxx#">
>
>     <cfdump var="#UpdateString#">
>     <cfdump var="#devnull#">
>     <cfquery name="UpdateDraw2"  datasource="#session.DBsource#">
>         SELECT * from tbl_inspection_form_draws
>         WHERE draw_id = <cfqueryparam cfsqltype="CF_SQL_INTEGER"
> value="#arguments.DrawIds[loopix]#">;
>      </cfquery>
>     <cfdump var="#UpdateDraw2#">
>
>
> The dumps came back and pointed the finger at the ListAppend statement.
> UpdateString was not changing and staying with the initial value of 0. The
> devnull variable was being changed constantly to 0 & the value of the
> current draw. (It was changing to 0 and the current draw id with each
> iteration, it was not expanding draws due to the way it was written.
>
> In addition I had added a result attribute to the second query as well as
> another SELECT * and DUMP. It also confirmed that the #UpdateString# was
> only passing a single value of 0 to the SQL. Which essentially caused all
> rows to update instead of just the rows that were not changed by the first
> SQL.
>
> I left the cfdumps in the code and changed the line to:
>
>     <cfset UpdateString =
> ListAppend(UpdateString,arguments.DrawIds[loopix])>
>
> At this point UpdateString was expanding with each iteration of the loop
> appending the new draw id. The way it was functioning on the old server
> with CF10.
>
> On 08/31/2016 06:16 PM, Charlie Arehart wrote:
>
> Dude, they’re getting the band back together! :-)
>
> So Frank, on your observation, can you offer a simple 2-3 line proofcase?
> I realize you gave us code, but not with the values you’re really using for
> the vars.
>
> Sometimes, when you create such an example, you find out that it’s not
> what you thought. But if it is, then others could at least readily try it
> on their own systems, and if there’s no solution found, you could then
> include it in a bug report to Adobe.
>
> I’ve not heard of this problem you report, so I’m inclined to think there
> may be another explanation. But let’s see. Hope that’s helpful.
>
> /charlie
>
>
>
> *From:* ad...@acfug.org [mailto:ad...@acfug.org <ad...@acfug.org>] *On
> Behalf Of *Cameron Childress
> *Sent:* Wednesday, August 31, 2016 05:03 PM
> *To:* discussion@acfug.org
> *Subject:* Re: [ACFUG Discuss] Hopefully this list still exists
>
>
>
> Folks are still on the list, though I am not sure the list management tool
> are visible anymore.
>
>
>
> The acfug.org domain actually just auto-renewed - so I think we are still
> good as long as the list software is actually running....
>
>
>
> -Cameron
>
>
>
> On Wed, Aug 31, 2016 at 5:23 PM, Ajas Mohammed <ajash...@gmail.com> wrote:
>
> Thanks for the email. I for one used to enjoy the challenges in this group
> with people sending their issues.
>
>
>
> I hope we can bring it back through this group emails or any other means
> as long as we are actively getting requests.
>
>
>
> Thanks,
>
>
>
> On Wednesday, August 31, 2016, Frank Moorman <stretch...@franksdomain.net>
> wrote:
>
> As the subject line states... hopefully this mail list still exists...
>
> I came across something interesting today... (and very stressful before I
> figured it out...)
>
> I migrated code from a CF10 server to a CF11 server. And I had a major bug
> because of it. It seems like the function of ListAppend changed.
>
> The Migration docs mentioned how there were changes to the CFScript way of
> using list functions... but I did not see any mention of changes to the
> CFML tag functionality.
>
> I had this code inside a loop:
>
>         <cfset devnull =
> ListAppend(UpdateString,arguments.DrawIds[loopix])>
>
> But it turns out that where CF10 and before would append UpdateString with
> the additional value and store nonsense in devnull, CF11 changes the way it
> works. In the above function in now stores the combination in the devnull
> variable.
>
>         <cfset UpdateString =
> ListAppend(UpdateString,arguments.DrawIds[loopix])>
>
> The above does work in CF11 also which seems to be how to change it to
> work on a minimal level.
>
> Hope everyone is well if this maillist still gets out,
> Enjoy all,
>
> Frank Moorman
>
>
>
> --
> <Ajas Mohammed />
>
> iUseDropbox(http://db.tt/63Lvone9)
> http://ajashadi.blogspot.com
> We cannot become what we need to be, remaining what we are.
> No matter what, find a way. Because thats what winners do.
> You can't improve what you don't measure.
> Quality is never an accident; it is always the result of high intention,
> sincere effort, intelligent direction and skillful execution; it represents
> the wise choice of many alternatives.
>
>
>
>
>
>
>
> --
>
> Cameron Childress
> --
> p:   678.637.5072
>
> im: cameroncf
>
> facebook <http://www.facebook.com/cameroncf> | twitter
> <http://twitter.com/cameronc> | google+
> <https://profiles.google.com/u/0/117829379451708140985>
>
>
>
>
>

Reply via email to