Načtení hodnot do wordu   otázka

VB.NET, ASP.NET WebForms

Dobrý den,

nechal jsem se inspirovat článkem (Microsoft Word z VB.NET) a pokouším se o následovné.

Mám vytvořenu stránku .aspx a v ní smlouvu, kde se mi do textových polí načítají hodnoty např.

<asp:TextBox ID="CompanyNameBox" runat="server" Width="200px" TabIndex="1">

tato stránka obsahuje též tlačítko tisk s které spouští událost (OnClick="IButtonPrint_Click")

    'Tisk obchodních podmínek
    Protected Sub IButtonPrint__Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs)
        Response.Redirect("~/Contract_F.doc")
    End Sub

Při kliknutí na tlačítko se mi otevře dokument Word s příslušnou smlouvou a připravenými záložkami (pro uvedený TextBox záložka contract_company).

Nyní bych potřeboval předat v události (OnClick="IButtonPrint_Click") hodnotu TextBoxu záložce.

Můžete prosím pomoci

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Nechápete způsob, jakým ASP.NET pracuje. Kód, který píšete ve VB.NET, se provádí na webovém serveru. Jak můžete z webového serveru manipulovat s dokumentem Office otevřeným na lokálním počítači?

Jediné, co můžete je udělat, je vygenerovat hotový dokument DOC už na serveru, uložit ho jako nový soubor, ten dát uživateli ke stažení a pak smazat (aby vám tam zbytečné soubory nebraly moc místa). Problém je v tom, že musíte mít na serveru nainstalované Office, což je bezpečnostní problém a na webhostingu to samozřejmě nikde není.

Tento článek tedy k danému účelu nemůžete použít, musíte doc generovat jinak.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Děkuji za nakopnutí, to s tím Wordem jsem si neuvědomil. Měl jsem představu, že ten .doc dokument bude uložen a naplněn hodnotami na serveru a že po provedení

    Protected Sub IButtonPrint_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs)
        Response.Redirect("~/ContractF_F.doc")
    End Sub

se klientům stáhne do jejich počítače.

Nic méně jsem od Wordu upustil a a vytvořil "Tiskovou sestavu" se smlouvou jako stránku .aspx a změnil jsem událost (IButtonPrint_Click)

    Protected Sub IButtonPrint_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs)
        Response.Redirect("~/ContractF_print.aspx")
    End Sub

DOTAZ:

Jak mohu předat nové stránce ("~/ContractF_print.aspx") otevřené událostí (IButtonPrint_Click) hodnoty z textových polí původní stránky? Musím to udělat přes parametry v URL (i když se stránka neotvírá v novém okně), nebo existuje lepší řešení např. cookies nebo session?

Děkuji za případnou odpověď

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Parametry v URL. Session i cookies mohou být sdílená pro více záložek v prohlížeči a pokud by uživatel kliknul na tlačítko ve dvou různých záložkách, hodnoty by se přepisovaly.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback