Search Results

Search found 37765 results on 1511 pages for 'null reference exception'.

Page 368/1511 | < Previous Page | 364 365 366 367 368 369 370 371 372 373 374 375  | Next Page >

  • How to do Linq aggregates when there might be an empty set?

    - by Shaul
    I have a Linq collection of Things, where Thing has an Amount (decimal) property. I'm trying to do an aggregate on this for a certain subset of Things: var total = myThings.Sum(t => t.Amount); and that works nicely. But then I added a condition that left me with no Things in the result: var total = myThings.Where(t => t.OtherProperty == 123).Sum(t => t.Amount); And instead of getting total = 0 or null, I get an error: System.InvalidOperationException: The null value cannot be assigned to a member with type System.Decimal which is a non-nullable value type. That is really nasty, because I didn't expect that behavior. I would have expected total to be zero, maybe null - but certainly not to throw an exception! What am I doing wrong? What's the workaround/fix?

    Read the article

  • How to create a Appointment in a Shared Calendar (Sharepoint) with VBA (Macro)?

    - by Diogo K.
    I am actually trying to make an appointment from an excel spreadsheet. I have all the information of the appointment, like subject, body, start and end dates, I actually can create an appointment but only with my personal calendar in outlook. How do I copy/move/create an appointment in a shared calendar in a sharepoint server? I've tried: Dim apOL As Object Dim objFolder As Folder Dim cro As String Set apOL = CreateObject("Outlook.Application") Set oItem = apOL.CreateItem(olApItem) Set MAPISession = apOL.Session ... cro = "stssync://sts/?ver=1.0&type=calendar&cmd=add-folder&base-url=(MY SP SERVER)&list-url=%2FLists%2FCronograma%20%20%2Fcalendar%2Easpx&guid=%7B02717CEF%2D404F%2D482F%2DA131%2D5C3C245CD268%7D&site-name=Testes&list-name=Cronograma%20-" ... Set objFolder = MAPISession.OpenSharedFolder(cro, Null,Null,Null) It gives me the error "Type Mismatch" I'd try to get the objFolder as the Sharepoint Folder then later create an local appointment and then try an Item.Move objFolder Is it the correct way?

    Read the article

  • c++ networking issue- retrnsmittion without ccongestion

    - by gln
    I wrote an application in c++ which send data over tcp connection to several machines.as part of the protocol I use in my application, the other side sends hearbeat messages from time to time, then I know that the connection is still alive. now, I want this application to work on 100 machines or more at the same time. but, I see that sometimes I don't get these heartbeat messages although they sent: I see in wireshark that the packet arrived, then my OS doesn't ack on this message, so there are some retransmit without any ack from my OS. if I look in the window size property - I saw that there is no issue in this part. what can be the root cause for this behavior? it is something in my code that I should change? this is my select code: int res = select(fdCount, &readFds, NULL, NULL, NULL ); I'm using server 2008 r2. Please help me! thanks

    Read the article

  • How to retrieve an url parameter in the Zend Framework ?

    - by ismaelsow
    Hello guys ! I'am trying to retrieve an parameter passed in a url using the zend framework. But of course, it is not working ! My code looks like this : Generating the url : <?php echo $this->url(array('controller' => 'poll', 'action' => 'showresults', 'poll_id' => $poll['_id']), null, true) ?> Retrieving the "poll_id" parameter in showresultsAction() : $request = new Zend_Controller_Request_Http(); $poll_id = $request->getParam('poll_id'); The problem is that $poll_id is NULL. When I do a var_dump of $request-getParams(), it is also NULL. I have glanced trough the Zend Framework doc, but it was not very usefull. Any idea ? Thanks !

    Read the article

  • How to handle large table in MySQL ?

    - by Frantz Miccoli
    I've a database used to store items and properties about these items. The number of properties is extensible, thus there is a join table to store each property associated to an item value. CREATE TABLE `item_property` ( `property_id` int(11) NOT NULL, `item_id` int(11) NOT NULL, `value` double NOT NULL, PRIMARY KEY (`property_id`,`item_id`), KEY `item_id` (`item_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; This database has two goals : storing (which has first priority and has to be very quick, I would like to perform many inserts (hundreds) in few seconds), retrieving data (selects using item_id and property_id) (this is a second priority, it can be slower but not too much because this would ruin my usage of the DB). Currently this table hosts 1.6 billions entries and a simple count can take up to 2 minutes... Inserting isn't fast enough to be usable. I'm using Zend_Db to access my data and would really be happy if you don't suggest me to develop any php side part. Thanks for your advices !

    Read the article

  • Force column order, Excel data table

    - by Chris
    I have a Excel Workbook that I use as a report template. I change the datasource on each pivot and datatable in a C# app. When I change the datatable datasource it tweeks the columns. Is there a way to force the column order? private void RefreshRawData(string dataSource, string connection) { xl._Worksheet ws = (xl._Worksheet)xlTemplate.Worksheets["Raw Data"]; xl.ListObject table = ws.ListObjects["Table_ExternalData_1"]; xl.QueryTable qt = table.QueryTable; qt.CommandText = dataSource; qt.Connection = GetExcelConnectionString((string)qt.Connection); qt.BackgroundQuery = false; qt.Refresh(m); Marshal.ReleaseComObject(ws); Marshal.ReleaseComObject(table); Marshal.ReleaseComObject(qt); ws = null; table = null; qt = null; }

    Read the article

  • How do I obtain the version information for my Windows Service programmatically

    - by user302004
    I need to obtain the version of my Windows service programmatically and store it in a string. Then, I'll append the version to my display name and service name in the ProjectInstaller class. Right now I'm getting an empty string and I'm having trouble debugging my setup project. Here's my current code: string version = null; try { Assembly exeAssembly = Assembly.GetEntryAssembly(); Type attrType = typeof(AssemblyFileVersionAttribute); object[] attributes = exeAssembly.GetCustomAttributes(attrType, false); if (attributes.Length 0) { AssemblyFileVersionAttribute verAttr = (AssemblyFileVersionAttribute)attributes[0]; if (verAttr != null) { version = verAttr.Version; } } } catch { } if (version == null) { version = string.empty; }

    Read the article

  • error string list handle in C#

    - by Chelsea_cole
    Same namespace: 2 forms. public class Account //frm1 { public string Username; public string Password; } public class ListAcc { public static List<Account> UserList; } private void button1_Click(object sender, EventArgs e) { List<Account> UserList = new List<Account>(); Account acc = new Account(); acc.Username = textBox1.Text; acc.Password = textBox2.Text; UserList.Add(acc); } private void button2_Click(object sender, EventArgs e) //frm2 { string p = frmDangky.ListAcc.UserList[0].Username; // null ->error string p = frmDangky.ListAcc.UserList[0].Password; // null ->error } Someone help me? :( why my string is NULL???????? The textBox is not empty... Thanks!

    Read the article

  • How do I get a JComponent to resize after calling `setVisible(true)`?

    - by iWerner
    Our application displays a 2D view of our data (mainly maps) and then allows the user to change to a 3D view. The 2D and 3D views are generated by custom C++ code that is SWIG'ed into our Swing GUI and wrapped within a JComponent. These JComponents are then displayed within another parent JComponent. Our problem is that when we change from the 2D to the 3D view and then back to the 2D view, when we resize the window the 2D view does not get resized. The resize events don't get sent to the 2D view. Our application runs under Linux (Fedora 11). We're running Java version 1.6.0_12. Here is some sample code in which I've replaced the 2D view and 3D view with two 2 JButtons, that produces the same behaviour. Once you go to 3D and then back to 2D, resizing the window does not cause the 2D view to be resized. /* TestFrame.java * Compile with: $ javac TestFrame.java * Run with: $ java TestFrame */ import java.awt.BorderLayout; import java.awt.Container; import java.awt.event.ComponentEvent; import java.awt.event.ComponentListener; import javax.swing.JButton; public class TestFrame extends javax.swing.JFrame { private boolean mode2D = true; private JButton view2D = null; private JButton view3D = null; private Container parent = null; public TestFrame() { initComponents(); containerPanel.setLayout(new BorderLayout()); view2D = new JButton("2D View"); view2D.addComponentListener(new MyListener("2D VIEW")); containerPanel.add(view2D); } private void changerButtonActionPerformed(java.awt.event.ActionEvent evt) { if (parent == null) { parent = view2D.getParent(); } if (mode2D) { System.out.println("Going from 2D to 3D"); view2D.setVisible(false); if (view3D != null) { view3D.setVisible(true); } else { view3D = new JButton("3D View"); view3D.addComponentListener(new MyListener("3D VIEW")); parent.add(view3D); } ((JButton) evt.getSource()).setText("Change to 2D"); mode2D = false; } else { System.out.println("Going from 3D to 2D"); view3D.setVisible(false); view2D.setVisible(true); ((JButton) evt.getSource()).setText("Change to 3D"); mode2D = true; } } public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new TestFrame().setVisible(true); } }); } private javax.swing.JPanel containerPanel; private javax.swing.JButton changerButton; private class MyListener implements ComponentListener { private String name; public MyListener(String name) { this.name = name; } @Override public void componentHidden(ComponentEvent event) { System.out.println("@@@ [" + name + "] component Hidden"); } @Override public void componentResized(ComponentEvent event) { System.out.println("@@@ [" + name + "] component Resized"); } @Override public void componentShown(ComponentEvent event) { System.out.println("@@@ [" + name + "] component Shown"); } @Override public void componentMoved(ComponentEvent event) { System.out.println("@@@ [" + name + "] component Moved"); } }; @SuppressWarnings("unchecked") private void initComponents() { containerPanel = new javax.swing.JPanel(); changerButton = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); containerPanel.setBorder(new javax.swing.border.MatteBorder(null)); javax.swing.GroupLayout containerPanelLayout = new javax.swing.GroupLayout(containerPanel); containerPanel.setLayout(containerPanelLayout); containerPanelLayout.setHorizontalGroup( containerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 374, Short.MAX_VALUE) ); containerPanelLayout.setVerticalGroup( containerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 239, Short.MAX_VALUE) ); changerButton.setText("Change to 3D"); changerButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { changerButtonActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(containerPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(changerButton)) .addContainerGap()) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(containerPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(changerButton) .addContainerGap()) ); pack(); } } (My apologies for the Netbeans generated GUI code) I should mention that when we call parent.remove(view2D) and parent.add(view3D) to change the views the X Windows ID of our 3D view changes and we're unable to get our 3D view back. Therefore parent.remove(view2D) and parent.add(view3D) is not really a solution and we have to call setVisible(false) and setVisible(true) on the JComponents that contain our 2D and 3D views in order to hide and show them. Any help will be greatly appreciated.

    Read the article

  • How can I safely decide if a variable is a string of more than one characters?

    - by Alan
    I am using the following Javascript: if (typeof content !== 'undefined' && content.length > 0) { $state.transitionTo('admin.content', { content: content }) } I thought this was safe to use but it gives me an error saying: TypeError: Cannot read property 'length' of null I am using the following function to decide if something is a number: isNumber: function (num) { // Return false if num is null or an empty string if (num === null || (typeof num === "string" && num.length === 0)) { return false; } var rtn = !isNaN(num) return rtn; }, How can I write a similar function that would very safely determine if something is a string with a length of more than 0?

    Read the article

  • How to call a jquery function from an action method in controller?

    - by Hasan Fahim
    I have a requirement to open a popup from an action method in controller. The action method is basically registering a user. [HttpPost] public ActionResult Register(RegisterModel model) { if (ModelState.IsValid) { MembershipCreateStatus createStatus; Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null, out createStatus); if (createStatus == MembershipCreateStatus.Success) { FormsAuthentication.SetAuthCookie(model.UserName, false /* createPersistentCookie */); //------------------------------------------ //I need to call a jquery function from here //------------------------------------------ return RedirectToAction("Index", "Home"); } else { ModelState.AddModelError("", ErrorCodeToString(createStatus)); } } return View(model); } The jquery function, present in the view, would just make a hidden DIV, visible, and set the opacity, etc, to represent a popup. I need to call such a jquery function from the controller's action method shown above.

    Read the article

  • In SQL, what does Group By mean without Count(*), or Sum(), Max(), avg(), ..., and what are some use

    - by Jian Lin
    In SQL, if we use Group By without Count(*) or Sum(), etc, then the result is as follows: mysql> select * from sentGifts; +--------+------------+--------+------+---------------------+--------+ | sentID | whenSent | fromID | toID | trytryWhen | giftID | +--------+------------+--------+------+---------------------+--------+ | 1 | 2010-04-24 | 123 | 456 | 2010-04-24 01:52:20 | 100 | | 2 | 2010-04-24 | 123 | 4568 | 2010-04-24 01:56:04 | 100 | | 3 | 2010-04-24 | 123 | NULL | NULL | 1 | | 4 | 2010-04-24 | NULL | 111 | 2010-04-24 03:10:42 | 2 | | 5 | 2010-03-03 | 11 | 22 | 2010-03-03 00:00:00 | 6 | | 6 | 2010-04-24 | 11 | 222 | 2010-04-24 03:54:49 | 6 | | 7 | 2010-04-24 | 1 | 2 | 2010-04-24 03:58:45 | 6 | +--------+------------+--------+------+---------------------+--------+ 7 rows in set (0.00 sec) mysql> select *, count(*) from sentGifts group by whenSent; +--------+------------+--------+------+---------------------+--------+----------+ | sentID | whenSent | fromID | toID | trytryWhen | giftID | count(*) | +--------+------------+--------+------+---------------------+--------+----------+ | 5 | 2010-03-03 | 11 | 22 | 2010-03-03 00:00:00 | 6 | 1 | | 1 | 2010-04-24 | 123 | 456 | 2010-04-24 01:52:20 | 100 | 6 | +--------+------------+--------+------+---------------------+--------+----------+ 2 rows in set (0.00 sec) mysql> select * from sentGifts group by whenSent; +--------+------------+--------+------+---------------------+--------+ | sentID | whenSent | fromID | toID | trytryWhen | giftID | +--------+------------+--------+------+---------------------+--------+ | 5 | 2010-03-03 | 11 | 22 | 2010-03-03 00:00:00 | 6 | | 1 | 2010-04-24 | 123 | 456 | 2010-04-24 01:52:20 | 100 | +--------+------------+--------+------+---------------------+--------+ 2 rows in set (0.00 sec) Only 1 row is returned per "group". What does it mean when there is no "Count(*)", etc when using "Group By", and what are it uses? thanks.

    Read the article

  • debugfs_create_file doesn't create file

    - by bala1486
    Hello, I am trying to create a debugfs file using the debugfs_create_file(...). I have written a sample code for this. static int __init mmapexample_module_init(void) { file1 = debugfs_create_file("mmap_example", 0644, NULL, NULL, &my_fops)\ ; printk(KERN_ALERT "Hello, World\n"); if(file1==NULL) { printk(KERN_ALERT "Error occured\n"); } if(file1==-ENODEV) { printk(KERN_ALERT "ENODEV occured\n"); } return 0; } When i ran insmod i could get the Hello, World message but no the error message. So i think the debugfs_create_file worked fine. However i couldn't find any file in /sys/kernel/debug. The folder is there but it is empty. Can anyone help me with this? Thank you... Thanks, Bala

    Read the article

  • Is this a correct implementation of singleton C++?

    - by Kamal
    class A{ static boost::shared_ptr<A> getInstance(){ if(pA==NULL){ pA = new A(); } return boost::shared_ptr(pA); } //destructor ~A(){ delete pA; pA=NULL; } private: A(){ //some initialization code } //private assigment and copy constructors A(A const& copy); // Not Implemented A& operator=(A const& copy); // Not Implemented static A* pA; }; A* A::pA = NULL;

    Read the article

  • Can I avoid repeating myself in this situation (Java)

    - by UltimateGuy
    if (openFile == null) { new AppFileDialog().chooseFile("Save", appFrame); } if (openFile == null) { return; } Here I need to check to see if the user has already chosen a file. If not, they are given a prompt to. If the file is still null, the function returns without saving. The problem is the two identical if statements, can I avoid it? I take DRY very seriously, but at the same time KISS. Ideally the two go hand in hand, but in a situation like this, it seems they are mutually exclusive.

    Read the article

  • How do I make this Query against EF Efficient?

    - by dudeNumber4
    Using EF4. Assume I have this: IQueryable<ParentEntity> qry = myRepository.GetParentEntities(); Int32 n = 1; What I want to do is this, but EF can't compare against null. qry.Where( parent => parent.Children.Where( child => child.IntCol == n ) != null ) What works is this, but the SQL it produces (as you would imagine) is pretty inefficient: qry.Where( parent => parent.Children.Where( child => child.IntCol == n ).FirstOrDefault().IntCol == n ) How can I do something like the first comparison to null that won't be generating nested queries and so forth?

    Read the article

  • How can I search for a string in a .txt file for NSScanner?

    - by pixelbitapps
    I currently have the following code to get a certain piece of code from the UIWebView: NSURL *requestTimetableURL = [NSURL URLWithString:@"http://www.dhsb.org/index.phtml?d=201435"]; NSLog(@"Loaded Timetable"); NSError *error; NSString *page = [NSString stringWithContentsOfURL:requestTimetableURL encoding:NSASCIIStringEncoding error:&error]; [webView loadHTMLString:page baseURL:requestTimetableURL]; NSString* Period1; NSScanner *htmlScanner = [NSScanner scannerWithString:page]; [htmlScanner scanUpToString:@"<P align=center><STRONG><FONT color=#c00000>" intoString:NULL]; [htmlScanner scanString:@"<P align=center><STRONG><FONT color=#c00000>" intoString:NULL]; [htmlScanner scanUpToString:@"</FONT>" intoString:&Period1]; How can I scan a .txt file (which contains the string like above) for the code? E.G. [htmlScanner scanUpToString:teststring intoString:NULL]; Thanks!

    Read the article

  • Want to calculate the sum of the count rendered by group by option..

    - by Vijay
    i have a table with the columns such id, tid, companyid, ttype etc.. the id may be same for many companyid but unique within the companyid and tid is always unique and i want to calculate the total no of transactions entered in the table, a single transaction may be inserted in more than one row, for example, id tid companyid ttype 1 1 1 xxx 1 2 1 may be null 2 3 1 yyy 2 4 1 may be null 2 5 1 may be null the above entries should be counted as only 2 transactions .. it may be repeated for many companyids.. so how do i calculate the total no of transactions entered in the table i tried select sum(count(*)) from transaction group by id,companyId; but doesn't work select count(*) from transaction group by id; wont work because the id may be repeated for different companyids.

    Read the article

  • How does cast in C#/.NET 3.5 work for types with '?'

    - by Inez
    This is my code which works public decimal? Get() { var res = ... return res.Count() > 0 ? res.First() : (decimal?) null; } and this one doesn't work public decimal? Get() { var res = ... return res.Count() > 0 ? res.First() : null; } giving the compiler error: Error 1 Type of conditional expression cannot be determined because there is no implicit conversion between 'decimal' and '<null>' I wonder why? any ideas?

    Read the article

  • Saving a Django form with a Many2Many field with through table

    - by PhilGo20
    So I have this model with multiple Many2Many relationship. 2 of those (EventCategorizing and EventLocation are through tables/intermediary models) class Event(models.Model): """ Event information for Way-finding and Navigator application""" categories = models.ManyToManyField('EventCategorizing', null=True, blank=True, help_text="categories associated with the location") #categories associated with the location images = models.ManyToManyField(KMSImageP, null=True, blank=True) #images related to the event creator = models.ForeignKey(User, verbose_name=_('creator'), related_name="%(class)s_created") locations = models.ManyToManyField('EventLocation', null=True, blank=True) In my view, I first need to save the creator as the request user, so I use the commit=False parameter to get the form values. if event_form.is_valid(): event = event_form.save(commit=False) #we save the request user as the creator event.creator = request.user event.save() event = event_form.save_m2m() event.save() I get the following error: *** TypeError: 'EventCategorizing' instance expected I can manually add the M2M relationship to my "event" instance, but I am sure there is a simpler way. Am I missing on something ?

    Read the article

  • Drupal 6 devel module dd() function not writing to drupal_debug.txt file

    - by Mike Munroe
    I am running a local development Drupal site on a Windows machine. I am trying to use the dd($data, $label = NULL) function from the devel module to help debug. Using this function, should write debug info to a drupal_debug.txt file in the /tmp folder on the machine where the Drupal site is hosted. On my Windows machine, although I am using this function, the drupal_debug.txt file is not getting created anywhere, leading me to believe I am using the function incorrectly. Here is a snippet of how I am using it, <?php $test = "this is my test"; dd($test, $label = NULL); I am looking for an example of the correct syntax for the dd($data, $label = NULL) function. I have the Devel module enabled.

    Read the article

  • Instantiating spring beans in dynamically created classes.

    - by Xetius
    I am dynamically creating classes which contain spring beans, however the beans are not getting instantiated or initialised, leaving them as null. How do I make sure that a dynamically created class creates all of its spring beans properly? This is how I am dynamically creating the class: Class ctransform; try { ctransform = Class.forName(strClassName); Method handleRequestMethod = findHandleRequestMethod(ctransform); if (handleRequestMethod != null) { return (Message<?>) handleRequestMethod.invoke(ctransform.newInstance(), message); } } This leaves all spring bean objects within ctransform (of type strClassName) as null.

    Read the article

  • Force IOException during file reading

    - by DixonD
    I have the piece of code that reads data from file. I want to force IOException in this code for testing purpose (I want to check if code throws correct custom exception in this case). Is there a some way to create a file which is protected from being read, for example? Maybe dealing with some security checks can help? Please, note that passing name to not-existent file cannot help, because FileNotFoundException has separate catch clause. Here peace of code for better undestanding of question: BufferedReader reader = null; try { reader = new BufferedReader(new FileReader(csvFile)); String rawLine; while ((rawLine = reader.readLine()) != null) { // some work is done here } } catch (FileNotFoundException e) { throw new SomeCustomException(); } catch (IOException e) { throw new SomeCustomException(); } finally { // close the input stream if (reader != null) { try { reader.close(); } catch (IOException e) { // ignore } } }

    Read the article

  • How to Iterate a Resharper Template ?.

    - by sree
    I have a small Resharper Template I have written for Null check of a function Parameter (C#). Check.IsNotNull($param$, "$param$"); - Suggest Parameter - #1 I can now null check the function paramters one by one. But I want to be able to null check all the paramters at once through a template. Is it Possible in Resharper?. Is there someting like a "$Foreach" using which I can loop through parameter variables and write the code to check them one by one ?. (without writing out the foreach into the code) I see that the "Alt + Ins" does something similar. (Taking all Properties on the class and making them as parameters of a constructor). So hoping that there's a way out.

    Read the article

  • Fastest way to move records from a oracle DB into MS sql server after processing

    - by user347748
    Hi.. Ok this is the scenario...I have a table in Oracle that acts like a queue... A VB.net program reads the queue and calls a stored proc in MS SQL Server that processes and then inserts the message into another SQL server table and then deletes the record from the oracle table. We use a datareader to read the records from Oracle and then call the stored proc for each of the records. The program seems to be a little slow. The stored procedure itself isnt slow. The SP by itself when called in a loop can process about 2000 records in 20 seconds. BUt when called from the .Net program, the execution time is about 5 records per second. I have seen that most of the time consumed is in calling the stored procedure and waiting for it to return. Is there a better way of doing this? Here is a snippet of the actual code Function StartDataXfer() As Boolean Dim status As Boolean = False Try SqlConn.Open() OraConn.Open() c.ErrorLog(Now.ToString & "--Going to Get the messages from oracle", 1) If GetMsgsFromOracle() Then c.ErrorLog(Now.ToString & "--Got messages from oracle", 1) If ProcessMessages() Then c.ErrorLog(Now.ToString & "--Finished Processing all messages in the queue", 0) status = True Else c.ErrorLog(Now.ToString & "--Failed to Process all messages in the queue", 0) status = False End If Else status = True End If StartDataXfer = status Catch ex As Exception Finally SqlConn.Close() OraConn.Close() End Try End Function Private Function GetMsgsFromOracle() As Boolean Try OraDataAdapter = New OleDb.OleDbDataAdapter OraDataTable = New System.Data.DataTable OraSelCmd = New OleDb.OleDbCommand GetMsgsFromOracle = False With OraSelCmd .CommandType = CommandType.Text .Connection = OraConn .CommandText = GetMsgSql End With OraDataAdapter.SelectCommand = OraSelCmd OraDataAdapter.Fill(OraDataTable) If OraDataTable.Rows.Count > 0 Then GetMsgsFromOracle = True End If Catch ex As Exception GetMsgsFromOracle = False End Try End Function Private Function ProcessMessages() As Boolean Try ProcessMessages = False PrepareSQLInsert() PrepOraDel() i = 0 Dim Method As Integer Dim OraDataRow As DataRow c.ErrorLog(Now.ToString & "--Going to call message sending procedure", 2) For Each OraDataRow In OraDataTable.Rows With OraDataRow Method = GetMethod(.Item(0)) SQLInsCmd.Parameters("RelLifeTime").Value = c.RelLifetime SQLInsCmd.Parameters("Param1").Value = Nothing SQLInsCmd.Parameters("ID").Value = GenerateTransactionID() ' Nothing SQLInsCmd.Parameters("UID").Value = Nothing SQLInsCmd.Parameters("Param").Value = Nothing SQLInsCmd.Parameters("Credit").Value = 0 SQLInsCmd.ExecuteNonQuery() 'check the return value If SQLInsCmd.Parameters("ReturnValue").Value = 1 And SQLInsCmd.Parameters("OutPutParam").Value = 0 Then 'success 'delete the input record from the source table once it is logged c.ErrorLog(Now.ToString & "--Moved record successfully", 2) OraDataAdapter.DeleteCommand.Parameters("P(0)").Value = OraDataRow.Item(6) OraDataAdapter.DeleteCommand.ExecuteNonQuery() c.ErrorLog(Now.ToString & "--Deleted record successfully", 2) OraDataAdapter.Update(OraDataTable) c.ErrorLog(Now.ToString & "--Committed record successfully", 2) i = i + 1 Else 'failure c.ErrorLog(Now.ToString & "--Failed to exec: " & c.DestIns & "Status: " & SQLInsCmd.Parameters("OutPutParam").Value & " and TrackId: " & SQLInsCmd.Parameters("TrackID").Value.ToString, 0) End If If File.Exists("stop.txt") Then c.ErrorLog(Now.ToString & "--Stop File Found", 1) 'ProcessMessages = True 'Exit Function Exit For End If End With Next OraDataAdapter.Update(OraDataTable) c.ErrorLog(Now.ToString & "--Updated Oracle Table", 1) c.ErrorLog(Now.ToString & "--Moved " & i & " records from Oracle to SQL Table", 1) ProcessMessages = True Catch ex As Exception ProcessMessages = False c.ErrorLog(Now.ToString & "--MoveMsgsToSQL: " & ex.Message, 0) Finally OraDataTable.Clear() OraDataTable.Dispose() OraDataAdapter.Dispose() OraDelCmd.Dispose() OraDelCmd = Nothing OraSelCmd = Nothing OraDataTable = Nothing OraDataAdapter = Nothing End Try End Function Public Function GenerateTransactionID() As Int64 Dim SeqNo As Int64 Dim qry As String Dim SqlTransCmd As New OleDb.OleDbCommand qry = " select seqno from StoreSeqNo" SqlTransCmd.CommandType = CommandType.Text SqlTransCmd.Connection = SqlConn SqlTransCmd.CommandText = qry SeqNo = SqlTransCmd.ExecuteScalar If SeqNo > 2147483647 Then qry = "update StoreSeqNo set seqno=1" SqlTransCmd.CommandText = qry SqlTransCmd.ExecuteNonQuery() GenerateTransactionID = 1 Else qry = "update StoreSeqNo set seqno=" & SeqNo + 1 SqlTransCmd.CommandText = qry SqlTransCmd.ExecuteNonQuery() GenerateTransactionID = SeqNo End If End Function Private Function PrepareSQLInsert() As Boolean 'function to prepare the insert statement for the insert into the SQL stmt using 'the sql procedure SMSProcessAndDispatch Try Dim dr As DataRow SQLInsCmd = New OleDb.OleDbCommand With SQLInsCmd .CommandType = CommandType.StoredProcedure .Connection = SqlConn .CommandText = SQLInsProc .Parameters.Add("ReturnValue", OleDb.OleDbType.Integer) .Parameters("ReturnValue").Direction = ParameterDirection.ReturnValue .Parameters.Add("OutPutParam", OleDb.OleDbType.Integer) .Parameters("OutPutParam").Direction = ParameterDirection.Output .Parameters.Add("TrackID", OleDb.OleDbType.VarChar, 70) .Parameters.Add("RelLifeTime", OleDb.OleDbType.TinyInt) .Parameters("RelLifeTime").Direction = ParameterDirection.Input .Parameters.Add("Param1", OleDb.OleDbType.VarChar, 160) .Parameters("Param1").Direction = ParameterDirection.Input .Parameters.Add("TransID", OleDb.OleDbType.VarChar, 70) .Parameters("TransID").Direction = ParameterDirection.Input .Parameters.Add("UID", OleDb.OleDbType.VarChar, 20) .Parameters("UID").Direction = ParameterDirection.Input .Parameters.Add("Param", OleDb.OleDbType.VarChar, 160) .Parameters("Param").Direction = ParameterDirection.Input .Parameters.Add("CheckCredit", OleDb.OleDbType.Integer) .Parameters("CheckCredit").Direction = ParameterDirection.Input .Prepare() End With Catch ex As Exception c.ErrorLog(Now.ToString & "--PrepareSQLInsert: " & ex.Message) End Try End Function Private Function PrepOraDel() As Boolean OraDelCmd = New OleDb.OleDbCommand Try PrepOraDel = False With OraDelCmd .CommandType = CommandType.Text .Connection = OraConn .CommandText = DelSrcSQL .Parameters.Add("P(0)", OleDb.OleDbType.VarChar, 160) 'RowID .Parameters("P(0)").Direction = ParameterDirection.Input .Prepare() End With OraDataAdapter.DeleteCommand = OraDelCmd PrepOraDel = True Catch ex As Exception PrepOraDel = False End Try End Function WHat i would like to know is, if there is anyway to speed up this program? Any ideas/suggestions would be highly appreciated... Regardss, Chetan

    Read the article

< Previous Page | 364 365 366 367 368 369 370 371 372 373 374 375  | Next Page >