webForumDet fria alternativet

Public Function

13 svar · 277 visningar · startad av aleborg

aleborgMedlem sedan jan. 20013 341 inlägg
#1

Jag är ny på det här med com objekt, behöver lite hjälp här:

Public Conn As New Connection

Private Sub Form_Load()
    ' Open database connection
    Dim Conn
    Set Conn = Server.CreateObject("ADODB.Connection")
    strConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;DatSource=f:\hemsidor\egna\webshop\webshop.mdb"
    Conn.Open strConnectionString
End Sub

Public Function Produkt_Prop()
Dim prop As ADODB.Recordset

   pSQL = "Select * From Property Where PropertyID=1"
   Set prop = Conn.Execute(pSQL)
        prod_bgcolor = prop("Prod_BgColor")
        prod_text = prop("Prod_Text")
        prod_link = prop("Prod_Link")
        prod_visited = prop("Prod_Visited")
        prod_active = prop("Prod_Active")
        prod_hover = prop("Prod_Hover")
        prod_link_dec = prop("Prod_Link_Dec")
        prod_visited_dec = prop("Prod_Visited_Dec")
        prod_active_dec = prop("Prod_Active_Dec")
        prod_hover_dec = prop("Prod_Hover_Dec")
        Category_Html = prop("Category_Html")
    prop.Close
    Set prop = Nothing
End Function

Fel:
Operation is not allowed when the object is closed!

Rad:
Set prop = Conn.Execute(pSQL)

Hav överseende, första ActiveX DLL:en jag gör :e

------------------
Aleborg Solutions
Data-Doktorn
Min egen musik!
Mitt coverband

EclipseMedlem sedan juli 20003 825 inlägg
#2

Fel tråd.

[Redigerat av Eclipse den 29 jan 2002]

LarsGMedlem sedan dec. 200012 464 inlägg
#3

Då du har

Dim Conn

i Form_Load så blir det en lokal variabel som bara är definierad inom den rutinen.

------------------
essentitia preter non sans multiplicandum

aleborgMedlem sedan jan. 20013 341 inlägg
#4

Det hjälpte inte mycket att ta bort det, får samma fel!

------------------
Aleborg Solutions
Data-Doktorn
Min egen musik!
Mitt coverband

LarsGMedlem sedan dec. 200012 464 inlägg
#5

Anropar du form_load någonstans?

------------------
essentitia preter non sans multiplicandum

aleborgMedlem sedan jan. 20013 341 inlägg
#6

Som sagt så är jag ny på det här, var ska jag anropa den? Har ju satt "Public Conn As New Connection" i toppen, förmodar att man måste "sätta igång" Form_Load på nått sätt också, men hur?

------------------
Aleborg Solutions
Data-Doktorn
Min egen musik!
Mitt coverband

aleborgMedlem sedan jan. 20013 341 inlägg
#7

Gjorde om lite:

Public Conn As New Connection

Private Sub Form_Load()
    ' Open database connection
    Set Conn = CreateObject("ADODB.Connection")
    Connecta = "Provider=Microsoft.Jet.OLEDB.4.0;DataSource=f:\hemsidor\egna\webshop\webshop.mdb"
    Conn.Open (Connecta)
End Sub

Public Function Produkt_Prop()
Call Form_Load
   pSQL = "Select * From Property Where PropertyID=1"
   Set prop = Conn.Execute(pSQL)
        prod_bgcolor = prop("Prod_BgColor")
        prod_text = prop("Prod_Text")
        prod_link = prop("Prod_Link")
        prod_visited = prop("Prod_Visited")
        prod_active = prop("Prod_Active")
        prod_hover = prop("Prod_Hover")
        prod_link_dec = prop("Prod_Link_Dec")
        prod_visited_dec = prop("Prod_Visited_Dec")
        prod_active_dec = prop("Prod_Active_Dec")
        prod_hover_dec = prop("Prod_Hover_Dec")
        Category_Html = prop("Category_Html")
    prop.Close
    Set prop = Nothing
End Function

Så är iaf "Private Sub Form_Load" riktig, men jag får forfarande samma fel!

------------------
Aleborg Solutions
Data-Doktorn
Min egen musik!
Mitt coverband

aleborgMedlem sedan jan. 20013 341 inlägg
#8

YES! Löste det!

[Redigerat av aleborg den 29 jan 2002]

icaaqMedlem sedan okt. 20005 273 inlägg
#9

Hur ?? :q

------------------
-::| a tribute to LarsG |::-

aleborgMedlem sedan jan. 20013 341 inlägg
#10
Public Conn As New Connection

Private Sub Form_Load()
    ' Open database connection
    Set Conn = CreateObject("ADODB.Connection")
    Connecta = "Provider=Microsoft.Jet.OLEDB.4.0;DataSource=f:\hemsidor\egna\webshop\www\webshop.mdb"
    Conn.Open (Connecta)
End Sub

Private Sub Form_Close()
    ' Close database connection
    Conn.Close
    Set Conn = Nothing
End Sub

Public Function Produkt_Prop(visa)
    pSQL = "Select * From Property Where PropertyID=1"
    Set prop = Conn.Execute(pSQL)
            Produkt_Prop = prop("" & visa & "")
    prop.Close
    Set prop = Nothing
End Function

Private Sub Class_Initialize()
Call Form_Load
End Sub

Private Sub Class_Destroy()
Call Form_Close
End Sub

------------------
Aleborg Solutions
Data-Doktorn
Min egen musik!
Mitt coverband

aleborgMedlem sedan jan. 20013 341 inlägg
#11

Någon som vet hur man smidigt skulle kunna göra om den här koden och kalla den från en komponent?

<table width="140" border="0" cellspacing="0" cellpadding="2">
<%
SQL="Select * From Category Where CategoryBelongs Is Null And CategoryActive='yes' Order By CategoryName"
Set menu = Conn.Execute(SQL)
Do Until menu.EOF
%>
  <tr> 
    <td class="menybold"><%
	If CInt(Request.QueryString("menu"))=menu("CategoryID") Then
		Response.Write"<a href='meny.asp' class='menybold'><img src='webshop_images/folder_open_10x17.gif' width='17' height='10' border='0'>"& Enc(menu("CategoryName")) &"</a>"
	Else
		Response.Write"<a href='meny.asp?menu="& menu("CategoryID") &"' class='menybold'><img src='webshop_images/folder_10x17.gif' width='17' height='10' border='0'>"& Enc(menu("CategoryName")) &"</a>"
	End If
	%>	
	</td>
  </tr>
<%
	If CInt(Request.QueryString("menu"))=menu("CategoryID") Then
	sSQL="Select * From Category Where CategoryBelongs="& menu("CategoryID") &" And CategoryActive='yes' Order By CategoryName"
	Set submenu = Conn.Execute(sSQL)
	Do Until submenu.EOF
%>
  <tr> 
    <td class="meny"><%
		Response.Write"<a href='produkter.asp?category="& submenu("CategoryID") &"' target='Produkter' class='meny'><img src='webshop_images/item_small.gif' width='17' height='10' border='0'>&nbsp;&nbsp;"& Enc(submenu("CategoryName")) &"</a>"
	%></td>
  </tr>
<%
submenu.MoveNext
Loop
submenu.close
Set submenu = Nothing
End If
menu.MoveNext
Loop
menu.close
Set menu = Nothing
%>
</table>

------------------
Aleborg Solutions
Data-Doktorn
Min egen musik!
Mitt coverband

aleborgMedlem sedan jan. 20013 341 inlägg
#12

Never mind, löste det :e

------------------
Aleborg Solutions
Data-Doktorn
Min egen musik!
Mitt coverband

MorphMedlem sedan juli 2000534 inlägg
#13

Vän av ordning undrar ju naturlitvis varför i hela friden du anropar form_load och form_unload från Class_initialize och Class_destroy. Skriv koden direkt i initilize och destroy metoderna som körs automatiskt när skapar respektive förstör objektet. Nu är det ju onödig spaghettikod.

Form-metoderna används när du har ett formulär som GUI.

------------------
/Morph
Ever since I was eight or nine, I've been standing on the shoreline
All my life I've been waiting for something lasting

aleborgMedlem sedan jan. 20013 341 inlägg
#14

Vet inte :e
Ny som sagt på det här, har fixat det...

------------------
Aleborg Solutions
Data-Doktorn
Min egen musik!
Mitt coverband

139 ms totalt · 3 externa anrop · v20260731065814-full.2b84b982
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)