Ir para conteúdo
Fórum Script Brasil
  • 0

Como Transformar Um Arquivo Doc Em Binario Para Gravar No Banco De Dad


ADL

Pergunta

1 resposta a esta questão

Posts Recomendados

  • 0

use word application para ler os DOC...

alguma coisinha referente

http://www.4guysfromrolla.com/webtech/062402-1.shtml (em inglês)

e esse outro em francês eu acho...

http://www.asp-php.net/scripts/asp-php/asp_et_word.php

o codigo é do ultimo site mais não testei...

<% ' Export Word pour Access - Script de Guillaume

' Connexion à la base de données.
' Pensez à remplacer db_path par votre chemin + fichier

set db = Server.CreateObject("ADODB.Connection")
db.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & db_path

set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "SELECT * from Table ", db, 1, 2

' déclaration de deux futurs objets
dim WordApp, WordDoc

' Création de l'objet application word
Set WordApp = CreateObject("word.application")

' Pas la peine de démarrer Word sur le serveur, on n'y est pas !!!
WordApp.Application.Visible = false

' Création du document Word
Set WordDoc = WordApp.Documents.Add()

' Parcours du recordset. Pour chaque Item, création de plusieurs paragraphes contenant
' les informations de la base.
' Puis saut de page.
' Attention, là c'est du VBA Word, qui peut parfois être un peu étrange       
' Par exemple, l'opérateur := du VBA ne passe pas en ASP. Donc remplacer par 
' des parenthèses. 
' De même, les constantes VBA genre WdAlignCenter ne sont pas connues en ASP
' et retournent donc 0. Il faut donc utiliser leur valeur entière (0, 1, 2...)

Do while not rs.EOF    

   Set Mypar1 = WordDoc.Paragraphs.Add
   set MyRange1 = Mypar1.range
   MyRange1.InsertBefore(rs.fields.item("Client").value & vbcrlf)       
   MyRange1.Style = "Titre 1"
   MyRange1.ParagraphFormat.Alignment = 1       

   Set newpar = WordDoc.Paragraphs.Add
   set newrange = newpar.range

   with newrange
      .Bold = False
      .Italic = false
      .Font.Name = "Verdana"
      .Font.size = "12"
   end with

   newrange.insertBefore("Téléphone standard : " & rs.fields.item("tel_standard").value & vbcrlf)
   newrange.insertBefore("Activité : " & rs.fields.item("activite").value & vbcrlf)
   newrange.insertBefore(rs.fields.item("Commune").value & vbcrlf)

   newrange.insertBefore(rs.fields.item("CP").value & vbcrlf)
   newrange.insertBefore(rs.fields.item("Adresse3").value & vbcrlf)
   newrange.insertBefore(rs.fields.item("Adresse2").value & vbcrlf)
   newrange.insertBefore(rs.fields.item("Adresse1").value & vbcrlf)

   Set Mypar2 = WordDoc.Paragraphs.Add
   set MyRange2 = Mypar2.range
   MyRange2.InsertBefore("Représentant : " & rs.fields.item("Prenom").value & " " & rs.fields.item("Nom").value)
   MyRange2.Font.Bold = true

   set Myparag2 = WordDoc.Paragraphs.add
   set Myrang2 = Myparag2.range

   with Myrang2
      .Bold = False
      .Italic = True
      .Font.Name = "Verdana"
      .Font.size = "10"
   end With

   myrang2.insertBefore("email : "& rs.fields.item("email").value & vbcrlf)
   myrang2.insertBefore("Mobile : "& rs.fields.item("mobile").value & vbcrlf)
   myrang2.insertBefore("Fax : "& rs.fields.item("fax").value & vbcrlf)
   myRang2.insertBefore("Téléphone : "& rs.fields.item("tel").value & vbcrlf)

   Set Mypar3 = WordDoc.Paragraphs.Add
   set MyRange3 = Mypar3.range
   MyRange3.InsertBefore("Date du contact : " & rs.fields.item("Date").value )
   MyRange3.Font.Bold = False

   Set Mypar4 = WordDoc.Paragraphs.Add
   set MyRange4 = Mypar4.range

   MyRange4.InsertBefore("Commentaire : " & rs.fields.item("commentaire").value )
   MyRange4.Font.Bold = False

   rs.movenext

   if not rs.EOF then
      ' Paragraphe de saut de page tant qu'il reste des enregistrements

      Set Mypar5 = WordDoc.Paragraphs.Add
      set MyRange5 = Mypar5.range
      MyRange5.InsertBreak

      Set Mypar5 = WordDoc.Paragraphs.Add
      set MyRange5 = Mypar5.range
   end if

Loop              

' enregistrement du document au format word

WordDoc.SaveAs server.mapPath("doc/temp.doc")

' fermeture du document
WordDoc.Close
' et de Word
WordApp.Quit
' et du recordSet
rs.close
' et d'Access
db.close

Set WordDoc = Nothing
Set WordApp = Nothing
Set rs = Nothing
Set db = Nothing

' redirection du navigateur vers le document pour le visualiser, l'imprimer et le sauvegarder en local.
response.redirect "doc/temp.doc"
%>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...