Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

SQL Temp tables and/or arrays VS 2008 C#

Posted on 2010-11-11
3
417 Views
Last Modified: 2013-12-17
I have to write a snippet of code that will interface with an accounting program. In that program the data will be in a datagrid that I can read but not write. Using VS 2008 C# and MS SQL Server 2005 I have two questions:
1) I can extract the data from the grid and then write into a SQL temp table. Now given that multiple users can run this program at the same time, how do I insure the SQL temp table that is created is unique?
2) Instead of using a SQL temp table, is there any kind of variable array method I can use to temporarily hold the values, display them on the screen in a datagridview and then add any additional functionality?

I am trying to determine if using SQL temp table is my only choice or is there a more efficient way of handling this situation?
0
Comment
Question by:rwheeler23
  • 2
3 Comments
 
LVL 58

Accepted Solution

by:
cyberkiwi earned 500 total points
ID: 34115421
For the first part, if you create the tables as #tablename, these are session specific and as long as you use a specific connection string that is unique per user (such as including user name in connection string as part of "application name") - it will be unique to the user (session).
The other option is to have a normal table that you put data temporarily into.  You can add a key to the table (a GUID generated at app startup) that uniquely identifies which session owns those subset of records.

Now, while the above will work using SQL as a backend, if you only have very little data, you could just store it in an ArrayList or something compatible for display on a DataGrid.  It is able to bind to collections easily.  For example see here

http://www.csharpfriends.com/Articles/getArticle.aspx?articleID=81
0
 

Author Comment

by:rwheeler23
ID: 34116028
Please excuse my ignorance as I am still learning VS. As you can see below I have created the loop that will go through the datagrid of the accounting program. Now I need to extract certain values out of that grid and get it into the type of grid to which you refer. I have tried following the example you list but I not getting it right. What is the correct syntax to populate a datagrid that I can then display?

I have put two sample fields in the example:
DocAmount
DocNumber
try
            {
                /* Loop through the apply documents buffer and insert records into datalist */
                TableError err;
                decimal DocAmount;
                string DocNumber;
                

                /* Create a reference to the Apply Documents grid */
                PmApplyToOpenOpenTable PmApplyToOpenOpenTable;
                
                /* This points to the form table buffer */
                PmApplyToOpenOpenTable = Dynamics.Forms.PmApplyToMaintenance.Tables.PmApplyToOpenOpen;
                
                /* Read through the table buffer extracting a record for each open payables document */
                err = PmApplyToOpenOpenTable.GetFirst();

                while (err != TableError.EndOfTable)
                {
                    DocAmount = PmApplyToOpenOpenTable.AppliedAmount;
                    DocNumber = PmApplyToOpenOpenTable.ApplyToDocumentNumber;

                }
            }
            catch (Exception ex)
            {
                string eMsg = "002: ERROR:" + ex.Message;
                if (stackTraceWanted) eMsg += "\n" + ex.StackTrace;
                MessageBox.Show(eMsg);
            }
        }

Open in new window

0
 

Author Comment

by:rwheeler23
ID: 34116328
By the way, I am used to using a DataGridView so what I a looking to do is to find out how to populate a data grid view with the values in this datagrid coming from the accounting program.
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Google Directions API to Map URL -C#? 3 37
Get distinct values from excel or comm seperated file 4 30
Open a link in vb.net 2 15
Adding items to a C# list incrementally 5 28
This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.

807 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