Subject: Probably a very simple problem
Posted By: kerepuki Post Date: 1/10/2006 9:36:48 PM
Hey, I have been searching for an easy solution to adding records in multiple tables using Dreamweaver and asp.

Here is my code
----------------------------------------------------------------------
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/SKF_Data_Connection.asp" -->
<%
' *** Edit Operations: declare variables

Dim MM_editAction
Dim MM_abortEdit
Dim MM_editQuery
Dim MM_editCmd

Dim MM_editConnection
Dim MM_editTable
Dim MM_editRedirectUrl
Dim MM_editColumn
Dim MM_recordId

Dim MM_fieldsStr
Dim MM_columnsStr
Dim MM_fields
Dim MM_columns
Dim MM_typeArray
Dim MM_formVal
Dim MM_delim
Dim MM_altVal
Dim MM_emptyVal
Dim MM_i

MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME"))
If (Request.QueryString <> "") Then
  MM_editAction = MM_editAction & "?" & Server.HTMLEncode(Request.QueryString)
End If

' boolean to abort record edit
MM_abortEdit = false

' query string to execute
MM_editQuery = ""
%>
<%
' *** Insert Record: set variables

If (CStr(Request("MM_insert")) = "form_add_account_details") Then

  MM_editConnection = MM_SKF_Data_Connection_STRING
  MM_editTable = "sysdba.SKF_CREDIT_APPLICATION"
  MM_editRedirectUrl = "account_created.asp"
  MM_fieldsStr  = "textfield_reg_trading_name|value|textfield_abn|value|textfield_date_incorporated|value|textfield_skf_branch|value|textfield_credit_applied|value|checkbox_had_account_before|value|textfield_statement_method|value|textarea_nature_of_business|value|checkbox_monthly_statement|value|hiddenField_account_id|value"
  MM_columnsStr = "TRADENAME|',none,''|VATID|',none,''|DATEEST|',none,''|SKFBRACH|',none,''|DESIRED_CREDIT|',none,''|PREV_ACCOUNT|none,'Y','N'|STATEMENT_METHOD|',none,''|BUSINESS_DESCRIPTION|',none,''|MONTHLY_STATEMENT|none,'Y','N'|ACCOUNTID|',none,''"

  ' create the MM_fields and MM_columns arrays
  MM_fields = Split(MM_fieldsStr, "|")
  MM_columns = Split(MM_columnsStr, "|")
  
  ' set the form values
  For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
    MM_fields(MM_i+1) = CStr(Request.Form(MM_fields(MM_i)))
  Next

  ' append the query string to the redirect URL
  If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then
    If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then
      MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
    Else
      MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
    End If
  End If

End If
%>
<%
' *** Insert Record: construct a sql insert statement and execute it

Dim MM_tableValues
Dim MM_dbValues

If (CStr(Request("MM_insert")) <> "") Then

  ' create the sql insert statement
  MM_tableValues = ""
  MM_dbValues = ""
  For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
    MM_formVal = MM_fields(MM_i+1)
    MM_typeArray = Split(MM_columns(MM_i+1),",")
    MM_delim = MM_typeArray(0)
    If (MM_delim = "none") Then MM_delim = ""
    MM_altVal = MM_typeArray(1)
    If (MM_altVal = "none") Then MM_altVal = ""
    MM_emptyVal = MM_typeArray(2)
    If (MM_emptyVal = "none") Then MM_emptyVal = ""
    If (MM_formVal = "") Then
      MM_formVal = MM_emptyVal
    Else
      If (MM_altVal <> "") Then
        MM_formVal = MM_altVal
      ElseIf (MM_delim = "'") Then  ' escape quotes
        MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'"
      Else
        MM_formVal = MM_delim + MM_formVal + MM_delim
      End If
    End If
    If (MM_i <> LBound(MM_fields)) Then
      MM_tableValues = MM_tableValues & ","
      MM_dbValues = MM_dbValues & ","
    End If
    MM_tableValues = MM_tableValues & MM_columns(MM_i)
    MM_dbValues = MM_dbValues & MM_formVal
  Next
  MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")"

  If (Not MM_abortEdit) Then
    ' execute the insert
    Set MM_editCmd = Server.CreateObject("ADODB.Command")
    MM_editCmd.ActiveConnection = MM_editConnection
    MM_editCmd.CommandText = MM_editQuery
    MM_editCmd.Execute
    MM_editCmd.ActiveConnection.Close

    If (MM_editRedirectUrl <> "") Then
      Response.Redirect(MM_editRedirectUrl)
    End If
  End If

End If
%>
<%
Dim Add_Account_Details
Dim Add_Account_Details_numRows

Set Add_Account_Details = Server.CreateObject("ADODB.Recordset")
Add_Account_Details.ActiveConnection = MM_SKF_Data_Connection_STRING
Add_Account_Details.Source = "SELECT * FROM sysdba.ACCOUNT ORDER BY ACCOUNTID DESC"
Add_Account_Details.CursorType = 0
Add_Account_Details.CursorLocation = 2
Add_Account_Details.LockType = 1
Add_Account_Details.Open()

Add_Account_Details_numRows = 0
%>
----------------------------------------------------------------------

I am wanting to add 2 fields to another table SKF_FINANCE_DATA.

I have inserted a record into one table already but also need to insert another record into another table.

How would I go about doing this?

Thanks in advance

Kere
Reply By: mat41 Reply Date: 1/11/2006 12:21:34 AM
Not sure if ive missed something here, however:

;;;I have been searching for an easy solution to adding records in
Use the same theory as you would inserting one record. Just multiply as many times as you need

;;;I am wanting to add 2 fields to another table SKF_FINANCE_DATA
Open the DB, then the table, now add your fields.

mmmm, DW sure does write allot of code to do very little

TIP: Paste problematic code only here to be assisted in the best possible way


Wind is your friend
Matt
Reply By: kerepuki Reply Date: 1/14/2006 9:16:25 PM
Hey thanks for your reply, and I agree, DW does do little for a lot of code.  I found a solution, just not use Dreamweaver code.  I was only using DW because the project needed a quick solution but I talk my directors into an extension...much needed extension.  Thansk again for your reply.


Reply By: mat41 Reply Date: 1/14/2006 9:25:35 PM
No worries. IMO hand coding is quicker for classic ASP (homeSite, editPlus etc).

Wind is your friend
Matt

Go to topic 38688

Return to index page 395
Return to index page 394
Return to index page 393
Return to index page 392
Return to index page 391
Return to index page 390
Return to index page 389
Return to index page 388
Return to index page 387
Return to index page 386