Link to home
Start Free TrialLog in
Avatar of TURBOSHAN
TURBOSHAN

asked on

How to convert OBJECT to String instead of [object Object] in ActionScript

Hi,

 I am building a small mobile app using the Adobe Flash Builder Launch Pad tool which generates sample code for you.  

So what I've done is had it create a simple database example.

What THAT! does is, you enter some string value into an input field and click a button and when you do,  a bunch of SQL is executed that creates a table (if it does not exist), inserts the record into a local table and then automatically retrieves that inserted value and loads it as the dataProvider to a list component.

Works great!

HOWEVER!!!....when experimenting with that...I want to pull the data from the local .db it creates/inserts into and load that value into a string,  perhaps the ".text" property of an inputText field.

So I've tried a bunch of different things to do this.  I've tried clicking on the list item it automtically adds to and retrieving the .selectedItem  valiue.

I've tried storing the SQL-retrieved value into an ArrayCollection and then retrieving the value at  using  ArrayCollectionName.getItemAt(0).toString();

No matter what I do, it comes back into my String  variable as  [Object object]

This makes sense if you look at the bottom of this page where it shows what happens when you cast an Object to a String:  http://tinyurl.com/24cbhxt .

But there should be SOME WAY! for me to pull the value the user entered, which was written to the local .db, and put it into a String variable.  Right?  This seems like a very basic thing to do and in fact I routinely do this in PHP...I just cannot make it work with ActionScript in Flash Builder.

Can someone please show me how to retrieve the string value from the local .db?

I'm open to any solution.  Once I see how to do it in one way, I will be able to understand how to do it any other way, I think.

Below is the code sample that the Adobe Launch Pad tool generates as well as an example of how I try to get that value to put into a string variable.

Thank you!

========================================================================
The first three functions are what Launch Pad created for me and they work to load the value the user enters into a TextInput filed into the local .db and then reads it from the local .db and loads that into the dataProvider for the list.

At the bottom is my attempt to get the .db value and put it into a simple TextInput string field.


=======================
protected function view1_viewActivateHandler(event:ViewNavigatorEvent):void
{
      sqlConnection = new SQLConnection();
      sqlConnection.open(File.applicationStorageDirectory.resolvePath("giberish.db"));
      var stmt:SQLStatement = new SQLStatement();
      stmt.sqlConnection = sqlConnection;
      stmt.text = "CREATE TABLE IF NOT EXISTS giberish (label TEXT)";
      stmt.execute();
      getAllGiberish();
}
                  
protected function getAllGiberish():void
{
      var stmt:SQLStatement = new SQLStatement();
      stmt.sqlConnection = sqlConnection;
      stmt.text = "SELECT label FROM giberish";
      stmt.execute();
      list1.dataProvider = new ArrayCollection(stmt.getResult().data);
}
                  
protected function onAdd():void
{
      var stmt:SQLStatement = new SQLStatement();
      stmt.sqlConnection = sqlConnection;
      stmt.text = "INSERT into giberish values(:giberish)";
      stmt.parameters[":giberish"] = g.text;
      stmt.execute();
      getAllGiberish();
      g.text = "";
}

====================  All of the above works!==================

Here is how I try to pull the value into a String.  Note:   lb2.text is a TextInput field.

list2.dataProvider = new ArrayCollection(stmt.getResult().data);

 lb2.text = String(list2.dataProvider.getItemAt(0));

// That puts  [Object object] into lb2.text rather than the value of, say, "data_Input_By_Me"
Avatar of Ray Paseur
Ray Paseur
Flag of United States of America image

Is PHP in play here?  If so, you can use the PHP function var_dump() to visualize the object.  You may be able to call the __toString() method on the object.
http://php.net/manual/en/language.oop5.magic.php
Avatar of TURBOSHAN
TURBOSHAN

ASKER

No,  I just mentioned that I am able to do this with PHP very easily.

This is a Flash Builder 4.6/Actionscript problem only.
OK, understood.  I only saw it because it was in the PHP Zone.  Best of luck, ~Ray
Yeah...there's not a good area for just Flash Builder/Flex/ActionScript on Experts-Exchange so it's always a challenge trying to figure out where to post such questions.

Thanks anyway!
ASKER CERTIFIED SOLUTION
Avatar of TURBOSHAN
TURBOSHAN

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I found my own solution.