Toon posts:

[asp] meerdere selecties

Pagina: 1
Acties:

Verwijderd

Topicstarter
goedendag,

ik zit met het volgende probleem :
ik ben bezig met een asp pagina, en daar is het mogelijk om telkens van een bepaalde klant een overzicht te krijgen, en hier ook een afdrukpagina van te maken. Nou zou ik graag willen dat alle klanten worden geselecteerd en allemaal kan afdrukken.
Op dit moment wordt de volgende stuk code gebruikt om een klant te selecteren :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
  <SELECT name="afdrukken_klant" id="afdrukken_klant" onChange="GetDebnr(this.options(this.selectedIndex).text)" style="width:250">
      <% 'lees alle klanten en debnr's uit de topdeskdatabase
        Response.Write("<OPTION>Kies een klant:</OPTION>")

        OpenDbase()
        Set rs = dbase.execute("SELECT * FROM Pcontractant ORDER BY Contractant ASC")
        'SELECT DISTINCT debiteurnaam FROM Pfacturatie
        Do while not rs.EOF
          Response.Write("<OPTION>")
          Response.Write(rs("Contractant"))
          Response.Write("</OPTION>")
          rs.MoveNext
        Loop
 
        rs.close
        dbase.close
      %>
      </SELECT>
      <%
        If (debnr <> "") Then
          Response.Write("<SCRIPT language='JavaScript'>")
          Response.Write("afdrukken_klant.options["&debnr&"].selected = true;")
          Response.Write("</SCRIPT>")
        End If
      %>


Heeft iemand enig idee hoe ik dit zou kunnen doen?

[ Voor 22% gewijzigd door Verwijderd op 14-01-2003 09:44 . Reden: code iets aangepast ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:40

gorgi_19

Kruimeltjes zijn weer op :9

Where gebruiken in je SQL statement?
HTML:
1
<SELECT MULTIPLE NAME="choice" SIZE="3">


* gorgi_19 snapt er eigenlijk helemaal geen donder meer van waar het probleem nu zit :?

Wat lukt je niet? HTML code? ASP code?

[ Voor 96% gewijzigd door gorgi_19 op 14-01-2003 09:30 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12:42

Janoz

Moderator Devschuur®

!litemod

Wat lukt er niet? Dat je meerderen kunt selecteren of dat er vanaf het begin meerdere geselecteerd zijn?

Ik neem aan dat in de gehele source wel de <select> tag staat? Daarmee kun je namelijk aangeven dat er meerdere geselecteerd kunnen worden. Dat is meer een html probleem trouwens en daarom zou dit eerder in W&G passen ;)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

Topicstarter
Nu gaat het zo dat je een maand en jaar selecteert met een klant,
maar ik wil dat je een maand en jaar kunt selecteren en dat dan van alle klanten een overzicht wordt gemaakt, en dat deze overzichten op verschillende pagina's staan om te kunnen afdrukken

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:40

gorgi_19

Kruimeltjes zijn weer op :9

Maar nu ben ik (en ik denk Janoz) ook wel benieuwd naar wat nu het probleem is?
Wat lukt er niet? Wat heb je geprobeerd? Waar loopt het spaak?

De code die je post heeft namelijk niet zo veel (lees: geen donder) te maken met wat jij voor elkaar wilt krijgen...

En hoe stel je je voor dat het op meerdere pagina's moet komen? ASP genereert in principe maar 1 pagina.

[ Voor 44% gewijzigd door gorgi_19 op 14-01-2003 09:41 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12:42

Janoz

Moderator Devschuur®

!litemod

[gokmode]
Je hebt nu een asp site waarmee overzichten per tijdsperiode en klant gegenereerd kunnen worden. Deze wil je aanpassen zodat je niet per klant, maar alle klanten terug kunt krijgen. Je wilt als het ware dat stukje code in je startpost weg hebben.
[/gokmode]

Goed gegokt?

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

Ik denk dat dit de bedoeling is :
Je hebt een optionbox waar je meerdere klanten kan selecteren. Als je dan vervolgens op OK klikt dat er dan een print vriendelijk pagina wordt aangemaakt met alle gegevens van alle klant.
Maar ik kan er natuurlijk ook nog naast zitten.

Verwijderd

Topicstarter
Janoz schreef op 14 januari 2003 @ 09:42:
[gokmode]
Je hebt nu een asp site waarmee overzichten per tijdsperiode en klant gegenereerd kunnen worden. Deze wil je aanpassen zodat je niet per klant, maar alle klanten terug kunt krijgen. Je wilt als het ware dat stukje code in je startpost weg hebben.
[/gokmode]

Goed gegokt?
Als je gokken vind, dan is het goed gegokt, maar legde ik dat niet ook al uit hier :

[qoute]
Nu gaat het zo dat je een maand en jaar selecteert met een klant,
maar ik wil dat je een maand en jaar kunt selecteren en dat dan van alle klanten een overzicht wordt gemaakt, en dat deze overzichten op verschillende pagina's staan om te kunnen afdrukken
[/quote]

Het probleem zit hem dus voor mij dat ik er niet uit kom hoe ik in plaats van 1 klant selecteren gelijk allemaal kan selecteren en dat toch de overzichten per klant apart zijn, dus niet 2 of meerdere op 1 pagina

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:40

gorgi_19

Kruimeltjes zijn weer op :9

Als we toch bezig zijn:
Waarom gebruik je deze constructie niet?
ASP:
1
2
3
4
5
6
7
8
9
10
Do while not rs.EOF
    If debnr = rs("ContractantID") Then
        Response.Write("<OPTION value=" & rs("ContractantID") & ">")
    Else
        Response.Write("<OPTION value=" & rs("ContractantID") & " Selected>")
    End if
    Response.Write(rs("Contractant"))
    Response.Write("</OPTION>")
    rs.MoveNext
Loop
Verwijderd schreef op 14 January 2003 @ 09:50:
[...]


Als je gokken vind, dan is het goed gegokt, maar legde ik dat niet ook al uit hier :
Nee.. :+

Maar in plaats van de options, voer vervolgens de actie uit die op de resultaten pagina staat.. Of include hem desnoods.
Voorbeeld:
ASP:
1
2
3
4
Do while not rs.EOF
    Server.Execute "resultpage.asp?id=" & rs("ContractantID"))
    rs.MoveNext
Loop

oid.

Andere methode: Schrijf een generieke functie, welke de gegevens ophaalt uit de database en neerzet in een tabel. Deze functie zet je in een includebestand, welke je vervolgens bij beide pagina's include en aanroept.

Als ze niet apart op dezelfde pagina moeten, dan vervang je Server.Execute door:
HTML:
1
2
3
response.write "<script language=""Javascript"">"
Response.write "window.open('resultpage.asp?id='" & rs("ContractantID")) & "','" & rs("ContractantID"))  & "')"
response.write "</script>"

[ Voor 124% gewijzigd door gorgi_19 op 14-01-2003 10:01 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

gorgi_19 schreef op 14 januari 2003 @ 09:50:
ASP:
1
2
3
4
Do while not rs.EOF
    Server.Execute "resultpage.asp?id=" & rs("ContractantID"))
    rs.MoveNext
Loop
Leuk als je 500 klanten heb, krijg je 500 schermpjes.

  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 12-08 16:04

Jaspertje

Max & Milo.. lief

Verwijderd schreef op 14 januari 2003 @ 09:58:
[...]

Leuk als je 500 klanten heb, krijg je 500 schermpjes.
Maar ja, anders heb je ook nog het probleem... dat je 500 pagina's oid opent..

[ Voor 7% gewijzigd door Jaspertje op 14-01-2003 09:59 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:40

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 14 January 2003 @ 09:58:
[...]

Leuk als je 500 klanten heb, krijg je 500 schermpjes.
:? Ik gebruik toch server.execute? Waar open ik in dit stukje code 500 schermen?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

gorgi_19 schreef op 14 januari 2003 @ 10:01:
[...]

:? Ik gebruik toch server.execute? Waar open ik in dit stukje code 500 schermen?
Ik snap hem al, laat maar zitten

[ Voor 37% gewijzigd door Verwijderd op 14-01-2003 10:16 ]


Verwijderd

Topicstarter
ASP:
1
2
3
4
Do while not rs.EOF
    Server.Execute "resultpage.asp?id=" & rs("ContractantID"))
    rs.MoveNext
Loop


Dit snap ik even niet meer :?
Ik begrijp niet wat je hiermee bedoelt en hoe je hier op komt, kan hierdoor nou meerdere overzichten op 1 asp pagina, maar wel op meerdere a4 pagina's??

  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 12-08 16:04

Jaspertje

Max & Milo.. lief

Wat je wilt is zodra je op de print knop drukt, dat er dan 500 blaadjes uit de printer komen rollen met alle overzichten??

Dus eigelijk heb een zooi gegevens die je op een scherm zet en dan krijg je command (die weet ik ook niet) waardoor er een nieuwe pagina komt, net zoiets als   een spatie geeft????

of niet??

Wat je misschien wel kan doen, is de afmeting van een A4tje in je tabel hoogte en breedte zetten, zodat je tabel precies 1 a4tje fit, en dan die tabel steeds herhalen... ranzig maar wel een oplossing

[ Voor 68% gewijzigd door Jaspertje op 14-01-2003 10:30 ]


  • Mart!
  • Registratie: Februari 2000
  • Laatst online: 23-08 14:17
Beetje off-topic, maar wel handig om te weten;
Je kan met CSS natuurlijk aangeven wanneer een nieuwe pagina moet beginnen:

<STYLE>
P { page-break-after: always }
</STYLE>

Zorgt ervoor dat na elke P-tag een pagina einde wordt gezet voor de printer.

Bron: http://msdn.microsoft.com...erties/pagebreakafter.asp

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 25-08 20:26

TeeDee

CQB 241

wij hebben ook zoiets. Alleen anders opgelost.

Er is voor een win2k bak het volgende beschikbaar: lpr.exe

Wat doen wij?

Het lijkt een beetje op de manier van gorgi_19.

We openen de recordset. (bijv. 100 klanten)

Drukken op een knop: genereer print report.

middels het filesystem object genereren wij een text file, sturen dat naar lpr.exe en laten dat loopen.

Wij hebben uiteraard als voordeel dat we een vipp-enabled printer hebben staan, dus kunnen we het mooi formatted uitprinten. Maar een simpel txt file is ook wel af te drukken.

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 12-08 16:04

Jaspertje

Max & Milo.. lief

Mart! schreef op 14 januari 2003 @ 10:44:
Beetje off-topic, maar wel handig om te weten;
Je kan met CSS natuurlijk aangeven wanneer een nieuwe pagina moet beginnen:

<STYLE>
P { page-break-after: always }
</STYLE>

Zorgt ervoor dat na elke P-tag een pagina einde wordt gezet voor de printer.

Bron: http://msdn.microsoft.com...erties/pagebreakafter.asp
en dit was wat ik bedoelde... :) page-break-after

Verwijderd

Topicstarter
Mart! schreef op 14 January 2003 @ 10:44:
Beetje off-topic, maar wel handig om te weten;
Je kan met CSS natuurlijk aangeven wanneer een nieuwe pagina moet beginnen:

<STYLE>
P { page-break-after: always }
</STYLE>

Zorgt ervoor dat na elke P-tag een pagina einde wordt gezet voor de printer.

Bron: http://msdn.microsoft.com...erties/pagebreakafter.asp
Oke dat is misschien iets wat ik kan gebruiken.
Even voor de duidelijkheid, ik moet dan het stukje
code:
1
2
3
<STYLE>
    P { page-break-after: always }
</STYLE>

voor het gedeelte met asp code zetten, en als ik dan in asp wil gebruiken zou ik dat dan kunnen doen met Response.Write("<P>") en Response.Write("</P>")of zit ik er dan erg ver naast?

[ Voor 5% gewijzigd door Verwijderd op 14-01-2003 11:23 ]


Verwijderd

Je kunt met Response.Write("<TABLE>") ook tabellen aanmaken in asp, dus kun je ook met Response.Write("<P>") paragrafen aanmaken. Dus lijkt mij dat zo zou moeten werken.
Weet alleen niet of Style tag goed staat en of css kan combineren met asp

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:40

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 14 januari 2003 @ 11:49:
Weet alleen niet of Style tag goed staat en of css kan combineren met asp
css combineren met asp :?
asp = serverside
css = clientside.

'combineren' kan dus niet, omdat je nu appels en peren vergelijkt.
Wel kan je asp een cascading style sheet laten 'uitspugen'

(Simpel gezegd: zie geen reden waarom het niet kan; met serverside kan je alle mogelijke clientside zaken maken)

[ Voor 3% gewijzigd door gorgi_19 op 14-01-2003 11:51 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

gorgi_19 schreef op 14 januari 2003 @ 11:51:
[...]

css combineren met asp :?
asp = serverside
css = clientside.

'combineren' kan dus niet, omdat je nu appels en peren vergelijkt.
Wel kan je asp een cascading style sheet laten 'uitspugen'

(Simpel gezegd: zie geen reden waarom het niet kan; met serverside kan je alle mogelijke clientside zaken maken)
Misschien was combineren niet het goede woord, ik bedoelde meer of je in asp een stuk css code kon gebruiken wist ik niet zeker, maar dat moet dus kunnen.
Moet het style tag dan voor het asp stuk of in het asp stuk van je broncode?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:40

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 14 January 2003 @ 11:56:
[...]


Misschien was combineren niet het goede woord, ik bedoelde meer of je in asp een stuk css code kon gebruiken wist ik niet zeker, maar dat moet dus kunnen.
Moet het style tag dan voor het asp stuk of in het asp stuk van je broncode?
Afhankelijk waar je ASP allemaal gebruikt.. :+

Als het in de HTML in ieder geval maar tussen <head></head> staat.

Digitaal onderwijsmateriaal, leermateriaal voor hbo

Pagina: 1