Announcement

Collapse
No announcement yet.

XML Formular im Browser zur Erfassung anzeigen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • XML Formular im Browser zur Erfassung anzeigen

    Hallo,

    ich habe ein Formular gebastelt in XML welches ich gerne per ASP.NET im Browser anzeigen lassen würde, um das Ausfüllen dieses Formulars zu ermöglichen.
    Gleichzeitig möchte ich gerne die Felder des XML Formulars mit Validatoren versehen welche z.B. sagen "Achtung! Hier nur Zahl zulässig."

    Ich habe mich schon ein wenig umgeschaut, aber bisher noch keine optimale Lösung gefunden, hat jemand eine Idee oder einen Vorschlag?

    Danke und Beste Grüße,

    Jessica

  • #2
    XML ist eine Datei zur Speicherung ovn Daten, ich wusste nicht dass du damit ein Formular machen kannst, ich würde gerne ein Beispiel sehen.

    Entschuldige dass ich nicht helfen kann, aber du hast mich neugierig gemacht.
    Unsere Jugend ist unerträglich, unverantwortlich und entsetzlich anzusehen! - Aristoteles

    Comment


    • #3
      ! Update

      Okay versuchen wir es anders:

      Ich habe als Vorgabe ein Formular, welches in Microsoft Word vorliegt.

      Dieses Formular soll mit Prüfungen auf Validität, Plausis und Logikprüfungen versehen werden.
      Das Formular, welches die Prüfungen enthält soll dem Erfasser über eine Webseite zur verfügung gestellt werden.

      Der Benutzer ist angemeldet und ruft per Link das Formular auf [Formular].
      Im Browser wird das Formular aufgerufen:

      http://Seminar-Feedback/web/formular...mer=1135790652

      Im nächsten Schritt werden für den Teilnehmer anhand seiner Teilnehmernummer in ein Formular die Daten im Kopf über ihn selbst vorgesteuert: Name, Vorname, GebDatum usw.

      Der Teilnehmer kann das Formular im Browser dann ausfüllen und abspeichern.
      Das ganze soll über einen IIS und ASP.NET realisiert werden.

      Da ich das Formular irgendwie nicht in ASP.NET "hardcoded" wollte sondern irgendwie anders, dachte ich, man könne es in XML entwerfen und dann im Browser für den Teilnehmer zu Erfassung rendern (Stichwort InfoPath).

      Allerdings darf KEIN SharePoint Server (wegen Lizenz) zum Einsatz kommen!


      Für Anregungen, Hilfe, etc. wäre ich sehr dankbar.


      LG,


      Jessica

      Comment


      • #4
        Hallo,

        Da ich das Formular irgendwie nicht in ASP.NET "hardcoded" wollte sondern irgendwie anders, dachte ich, man könne es in XML entwerfen und dann im Browser für den Teilnehmer zu Erfassung rendern (Stichwort InfoPath).
        Also so ähnlich wie hier gezeigt ? (vierter Googletreffer mit "+xml +xslt +input +formular") Die gesamte Programmlogik muss man dann noch in eine .aspx Seite integrieren
        MfG
        Cheat-Sheets for Developers / Programming Quotes

        Comment


        • #5
          Ich hatte vergessen noch einen aktuellen Stand hier zu posten.
          Habe folgende Lösung nun vorerst gefunden:

          Code:
          <?xml version="1.0" encoding="UTF-8"?>
          <?mso-infoPathSolution name="urn:schemas-microsoft-com:office:infopath:TEST001:-myXSD-2008-10-29T10-51-34" href="manifest.xsf" solutionVersion="1.0.0.59" productVersion="12.0.0" PIVersion="1.0.0.0" ?>
          <?mso-application progid="InfoPath.Document" versionProgid="InfoPath.Document.2"?>
          <my:meineFelder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2008-10-29T10:51:34" xmlns:xd="http://schemas.microsoft.com/office/infopath/2003">
          <?xml-stylesheet type="text/xsl" href="view1.xsl"?>
          	<my:Signatur.Ort></my:Signatur.Ort>
          	<my:Signatur.Datum></my:Signatur.Datum>
          	<my:Signatur.Unterschrift></my:Signatur.Unterschrift>
          </my:meineFelder>

          Comment


          • #6
            Das Problem an der Lösung ist mir gerade aufgefallen, IE = Formular und Firefox = weiße Seite ODER Anzeige der Daten aus dem XML.

            Code:
            <?xml version="1.0" encoding="UTF-8"?>
            <?mso-infoPathSolution name="urn:schemas-microsoft-com:office:infopath:TEST001:-myXSD-2008-10-29T10-51-34" href="manifest.xsf" solutionVersion="1.0.0.59" productVersion="12.0.0" PIVersion="1.0.0.0" ?>
            <?mso-application progid="InfoPath.Document" versionProgid="InfoPath.Document.2"?>
            <my:meineFelder xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2008-10-29T10:51:34" xmlns:xd="http://schemas.microsoft.com/office/infopath/2003">
            <?xml-stylesheet type="text/xsl" href="view1.xsl"?>
            	<my:Signatur.Ort></my:Signatur.Ort>
            	<my:Signatur.Datum></my:Signatur.Datum>
            	<my:Signatur.Unterschrift></my:Signatur.Unterschrift>
            </my:meineFelder>

            Comment


            • #7
              hat noch jemand eine Idee wieso der IE das Formular anzeigt und der Firefox nicht? bzw. wie ich das Problem in den griff bekommen kann?

              Thx

              Comment


              • #8
                Originally posted by VisualBoobies View Post
                hat noch jemand eine Idee wieso der IE das Formular anzeigt und der Firefox nicht? bzw. wie ich das Problem in den griff bekommen kann?
                Ganz einfach: Keine properitäre MS-Technik verwenden sondern auf Standards wie XForms aufsetzen. Es könnte natürlich sein das MS hier mal wieder Standards (wie bei SVG) ignoriert.

                Comment


                • #9
                  Originally posted by Bernhard Geyer View Post
                  Ganz einfach: Keine properitäre MS-Technik verwenden sondern auf Standards wie XForms aufsetzen. Es könnte natürlich sein das MS hier mal wieder Standards (wie bei SVG) ignoriert.
                  Gibt es ein Programm, mit dem sich XForm-Komforme Formulare erstellen lassen?

                  /E: Habe gerade gelesen das die XForms die Unterstützung eines extra Plugins benötigen :-(
                  Zuletzt editiert von VisualBoobies; 23.01.2009, 10:37.

                  Comment


                  • #10
                    Hallo!

                    Ich lasse mir aus der XML und XSL Datei nun eine Seite generieren. Zwei Probleme bringt dies aber mit sich:

                    1. Wie bekomme ich Validation in die Geschichte, wenn doch die Felder etc. aus XLS und XML generiert werden?

                    2. Wie kann ich steuern an welcher Stelle auf meiner Seite (ich habe Masterpage mit Naviagtion) das erzeugte ausgegeben wird, mein Code im Moment:

                    Usercontrol Code-Behind:
                    [highlight=asp]
                    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
                    If (Not Me.IsPostBack) Then
                    Me._presenter.OnViewInitialized()
                    End If
                    Dim docXml As New XmlDocument()
                    docXml.Load(Server.MapPath(xmlSource))
                    Dim docXsl As New XslCompiledTransform()
                    docXsl.Load(Server.MapPath(xslSource))
                    docXsl.Transform(docXml, Nothing, Response.Output)
                    Me._presenter.OnViewLoaded()
                    End Sub
                    [/highlight]

                    Aufruf in der ASPX Seite:
                    [highlight=asp]<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Erfassen.aspx.vb" Inherits="Statistik.UI.Views.Erfassen"
                    Title="Erfassen" MasterPageFile="~/Shared/TableDefaultMaster.master" %>

                    <%@ Register TagPrefix="ctr" tagname="Statistik" src="~/Statistik/Statistik.ascx"%>
                    <%@ OutputCache Duration="60" VaryByParam="none" %>

                    <asp:Content ID="content" ContentPlaceHolderID="DefaultContent" Runat="Server">

                    <ctr:Statistik id="ctrStatistik" runat="server" xmlSource="~/Statistik/Form/Statistik.xml" xslSource="~/Statistik/XSL/Statistik.xsl" />

                    </asp:Content>
                    [/highlight]

                    Comment

                    Working...
                    X