Quantcast
Channel: VBForums - Visual Basic 6 and Earlier
Viewing all articles
Browse latest Browse all 22107

dateadd process change

$
0
0
i have this code that when u pick annually and enter 2 dates it adds the dates to database here is the code

Code:

If Text1(4).Text = "" And Text1(5).Text = "" Then 
Text1(4).Text = Text1(1).Text 
Text1(5).Text = Text1(2).Text 
   
 
Else 
' User Entered Data So Use That 
Text1(1).Text = Text1(4).Text 
Text1(2).Text = Text1(5).Text 
 
 
    End If

Select Case Combo1(0).Text ' Combo1(0) is the zero(0) index of the combo box control array
Case "A"
Call Annually(Text1(0).Text, Text1(1).Text, Text1(2).Text)




Code:

Public Sub Annually(SecID As String, INTSTRTDTE As String, INTENDDTE As String) 
 
Dim dteRunningDate As Date 
Dim VDate As Date 
Dim i As Integer 
Dim intInterval As Integer 
Dim sTempCalendar As String 
Dim dte As Date 
 Dim sSql As String 
 Dim Seq As String 
Dim sTempCCY As String 
 
 
sSql = "DELETE FROM SCHC WHERE SECID = '" & UCase(Text1(0).Text) & "'" 
  DBCALL "SELECT", "SCHC", sSql 
 Seq = 0 
         
       
         
         
           
   
        'dteRunningDate = CheckDateRules(DateAdd("m", 1, dteRunningDate)) 
        dte = (DateAdd("m", 12, INTSTRTDTE)) 
         
         
        ' Vdate = (DateAdd("m", 12, INTSTRTDTE)) 
      dteRunningDate = CheckDateRules(VDate) 
      dteRunningDate = Format(CDate(dteRunningDate), "dd mmm yyyy") 
 
 'dteRunningDate = CheckDateRules(DateAdd("m", 1, INTSTRTDTE)) 
 
    Do While dteRunningDate <= INTENDDTE 
         
        sSql = "INSERT INTO SCHC VALUES('" & SecID & "','" & Seq & "','" & INTSTRTDTE & "','" & dteRunningDate & "')" 
         
        DBCALL "SELECT", "SCHC", sSql 
            If result <> 100 Then 
                Message 43 
                result = 1 
            End If 
Debug.Print SecID & vbTab; Seq & vbTab; INTSTRTDTE & vbTab & dteRunningDate 
      INTSTRTDTE = dteRunningDate 
   
        'dteRunningDate = CheckDateRules(DateAdd("m", 1, dteRunningDate)) 
        dte = (DateAdd("m", 12, dte)) 
      dteRunningDate = CheckDateRules(dte) 
      dteRunningDate = Format(CDate(dteRunningDate), "dd mmm yyyy") 
        Seq = Seq + 1 
   
  Loop 
    If dteRunningDate <> INTENDDTE Then 
        sSql = "INSERT INTO SCHC VALUES('" & SecID & "','" & Seq & "','" & INTSTRTDTE & "','" & INTENDDTE & "')" 
                DBCALL "SELECT", "SCHC", sSql 
            If result <> 100 Then 
                Message 43 
                result = 1 
            End If 
    End If 
 
 
End Sub


it works fine if u enter a the dates say 20 jan 2010 - 20 jan 2013

it returns the following

11.375FNBS49 0 20100120 20110120
11.375FNBS49 1 20110120 20120120
11.375FNBS49 2 20120120 20130120
11.375FNBS49 3 20130120 20130120


which is right

but there could be a case where the dates in two of the text boxes are 20 jan 2010 - 20 jan 2013

but i want to say start at the 20 march 2010 - 20 jan 2013

so what i want to happen is the first entry is

20 jan 2010- 20 march 2010

and then go from the 20 march 2010 to the 20 jan 2013

how can i change my code for this to work

Viewing all articles
Browse latest Browse all 22107

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>