Avatar billede amikk Nybegynder
10. januar 2005 - 19:56 Der er 6 kommentarer og
1 løsning

Indsæt data fra DB til et worddokument

Hej

Jeg vil høre om der er nogen der kender til en løsning som skal fungere ud fra følgende ide

Bruger åbner en given side -> på siden vises noget data hentet fra en db -> ved klik på et link åbnes et word dokument -> i word dokumentet skal de info vist på den forrige side stå som standard data i dokumentet, plus brugeren skal kunne skrive yderligere info i dokumentet for dernæst at gemme det lokalt.

Nogen der kender guldkornet?
Avatar billede a1a1 Novice
10. januar 2005 - 20:57 #1
<%
Response.ContentType = "application/msword"
Response.AddHeader "Content-Disposition", "attachment;filename=testdoc.doc"
%>
I toppen af den side du vil have til et word doc ;o)

Du laver så en Response.Redirect til din fil og voila

eksempel:
testdoc1.asp:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    <title>Untitled</title>
</head>

<body>
<% response.redirect("testdoc.asp") %>
</body>
</html>

-- slut
testdoc.asp:
<%
Response.ContentType = "application/msword"
Response.AddHeader "Content-Disposition", "attachment;filename=testdoc.doc"
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
This is word
</body>
</html>
--- slut

;o)
Avatar billede amikk Nybegynder
10. januar 2005 - 21:10 #2
Jeg har måske ikke udtrykt klart nok nu jeg læser hvad jeg har skrevet. Eks har vi en brevskabelon som brugeren skal kunne bruge i sammenhæng med ovenstående. Det vil sige sig at der både kommer input fra en asp side (navn, adr, postnr osv), men samtidig skal man kunne skrive brevindhold fx.

a1 jeg kan godt se fornuften i det du har postet og det er et godt skridt derhen af... kan du eventuelt hjælpe mig med det sidste?
Avatar billede a1a1 Novice
10. januar 2005 - 21:34 #3
hvis det er en simpel word skabelon kan du sagtens konvertere den til html og så lave noget ála dette:

testdoc1.asp
<% Response.Buffer = True %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
<%
Dim id
id = Request.QueryString("id")
If id <> "" Then
    Response.Redirect("testdoc.asp?id=" & id)
Else %>
    <a href="testdoc.asp?id=1">Dokument 1</a>
    <br />
    <a href="testdoc.asp?id=2">Dokument 2</a>
<%
End If
%>
</body>
</html>

--- slut

testdoc.asp
<%
Response.ContentType = "application/msword"
Response.AddHeader "Content-Disposition", "attachment;filename=testdoc.doc"

Dim id, name, adr
id = Request.QueryString("id")
if id = 1 Then
    name = "name 1"
    adr = "adr 1"
ElseIf id = 2 Then
    name = "name 2"
    adr = "adr 2"
End If
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
This is word
<br>
name: <%=name%>
adr: <%=adr%>
</body>
</html>

--- slut
Avatar billede amikk Nybegynder
10. januar 2005 - 21:37 #4
Det eneste der adskiller det fra at være simpelt er at der benyttes et prædefineret sidehoved samt fod, og ligeså er der noget justering af dato og stedmærkning på brevet. Skriftypen som bruges er times new roman. Kan man selv udarbejde et sidehoved samt fod?
Avatar billede a1a1 Novice
10. januar 2005 - 22:17 #5
du kan lave siden som en "alm" asp fil
f.eks.:
testdoc.asp:
<%
Response.ContentType = "application/msword"
Response.AddHeader "Content-Disposition", "attachment;filename=testdoc.doc"

Dim id, name, adr
id = Request.QueryString("id")
if id = 1 Then
    name = "name 1"
    adr = "adr 1"
ElseIf id = 2 Then
    name = "name 2"
    adr = "adr 2"
End If
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>
<body>
<!-- #include file="pageheader.html" -->
This is word
<br>
name: <%=name%>
adr: <%=adr%>
<!-- #include file="pagefooter.html" -->
</body>
</html>


men du kan ikke styre word 100%, på denne måde...
Avatar billede amikk Nybegynder
10. januar 2005 - 23:38 #6
Ok. Jeg prøver mig frem. Du skal have mange tak for dine gode hjælp
Avatar billede a1a1 Novice
11. januar 2005 - 11:33 #7
selv tak :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester