Avatar billede tjgrindsted Nybegynder
27. januar 2007 - 19:29 Der er 25 kommentarer og
1 løsning

hent data fra Gridview og update med updatecommand

Hej
Jeg har denne kode som viser et gridview og "CuteEditor" ingen problemer med det, men hvordan gør jeg, hvis jeg vil klikke på en record i mit gridview så den så viser teksten fra "SiteMainText" i editoren og hvordan kan jeg så klikke på en knap så recorden bliver updateret.

Min kode er:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="test.aspx.vb" Inherits="test_Default" %>
<%@ Register TagPrefix="CE" Namespace="CuteEditor" Assembly="CuteEditor" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:SqlDataSource ID="SqlDataSourceSub" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionStringSub %>"
            ProviderName="<%$ ConnectionStrings:ConnectionStringSub.ProviderName %>" SelectCommand="SELECT * FROM [MainSiteText] ORDER BY [SiteMainID]">
        </asp:SqlDataSource>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="SiteMainID"
            DataSourceID="SqlDataSourceSub">
            <Columns>
                <asp:BoundField DataField="SiteMainID" HeaderText="SiteMainID" InsertVisible="False"
                    ReadOnly="True" SortExpression="SiteMainID" />
                <asp:BoundField DataField="SiteMainIdentity" HeaderText="SiteMainIdentity" SortExpression="SiteMainIdentity" />
                <asp:BoundField DataField="SiteMainText" HeaderText="SiteMainText" SortExpression="SiteMainText" />
                <asp:BoundField DataField="SiteMainID" HeaderText="ID" ReadOnly="True" SortExpression="SiteMainID" />
            </Columns>
        </asp:GridView>
    <CE:Editor id="Editor1" EditorWysiwygModeCss="../example.css"  runat="server" ></CE:Editor>
    </div>
    </form>
</body>
</html>
Avatar billede dr_chaos Nybegynder
28. januar 2007 - 08:09 #1
Jeg tror faktisk at du vil få det til at hænge bedre sammen hvis du lavede et master details view.
Det er hvor du bruger et gridview til at vise dine forskellige records og et details view til at redigerer i data.
Der er et eksempel i bunden af denne side:
http://msdn2.microsoft.com/en-us/library/ms379580(VS.80).aspx

Det er lavet med sql datasources.
Det du skal gøre er at lægge din CE:Editor ind i en edititemplate inden i et template field. Her kan du binde et felt til den og så får du update foræret via sql datasources.

Der er flere eksempler via denne søgning:
http://www.google.dk/search?client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&channel=s&hl=da&q=master+gridview+detailsview&meta=&btnG=Google-s%C3%B8gning
Avatar billede tjgrindsted Nybegynder
28. januar 2007 - 10:30 #2
Ja havde jeg tænkt på men det ødelægger min layout hvis jeg gør det da "CuteEditor" fylder så meget og da det kun er SiteMainText Jeg vil redigerer så ville jeg gerne kunne hente den ud af gridview og ned i CE:Editor.

SiteMainText er nemlig en hel tekst som godt kan være på over 1000 ord.
Avatar billede tjgrindsted Nybegynder
28. januar 2007 - 10:34 #3
sorry troede at den så ville hente CE:Editor ind i "Editing a Record in the GridView Control"

men kan se at i "Editing a Record in the DetailsView Control" der tager den kun 1 record og viser denne vertikalt, det kunne evt bruges jeg kunne jo bare Kun vise de ting jeg vil/ønsker.

Jeg kigger lige på det så vender jeg tilbage senere idag
Avatar billede dr_chaos Nybegynder
28. januar 2007 - 10:35 #4
Det vil jeg ikke mene at det gør.
Da et detailsview vises på en lidt anden måde et gridview.
Det viser kun en post ad gangen:
SiteMainText SiteMainText
Editer  CE:Editor
Avatar billede dr_chaos Nybegynder
28. januar 2007 - 10:35 #5
oki
Avatar billede tjgrindsted Nybegynder
28. januar 2007 - 11:35 #6
Okay jeg har lavet noget der virker med Details/Grid view men hvordan kan jeg bygge    <CE:Editor id="Editor1" EditorWysiwygModeCss="../example.css"  runat="server" ></CE:Editor> med ind ved <asp:BoundField DataField="SiteMainText" HeaderText="Text" SortExpression="SiteMainText" /> så teksten vises i CE:Editor.

min kode er:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="test.aspx.vb" Inherits="test_Default" %>
<%@ Register TagPrefix="CE" Namespace="CuteEditor" Assembly="CuteEditor" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:SqlDataSource ID="SqlDataSourceSub" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionStringSub %>"
            ProviderName="<%$ ConnectionStrings:ConnectionStringSub.ProviderName %>" SelectCommand="SELECT * FROM [MainSiteText] ORDER BY [SiteMainID]">
        </asp:SqlDataSource>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="SiteMainID"
            DataSourceID="SqlDataSourceSub">
            <Columns>
                <asp:CommandField ShowSelectButton="True" />
                <asp:BoundField DataField="SiteMainID" HeaderText="SiteMainID" InsertVisible="False"
                    ReadOnly="True" SortExpression="SiteMainID" />
                <asp:BoundField DataField="SiteMainIdentity" HeaderText="SiteMainIdentity" SortExpression="SiteMainIdentity" />
                <asp:BoundField DataField="SiteMainText" HeaderText="SiteMainText" SortExpression="SiteMainText" />
                <asp:BoundField DataField="SiteMainID" HeaderText="ID" ReadOnly="True" SortExpression="SiteMainID" />
            </Columns>
        </asp:GridView>
       
        <asp:DetailsView HeaderText="Details" ID="DetailsView1" runat="server" Height="50px" Width="125px" AutoGenerateRows="False" DataKeyNames="SiteMainID" DataSourceID="SqlDataSourceDetal">
            <Fields>
              <asp:BoundField DataField="SiteMainID" HeaderText="ID" ReadOnly="True" SortExpression="SiteMainID" />
              <asp:BoundField DataField="SiteMainIdentity" HeaderText="Identity" SortExpression="SiteMainIdentity" />
              <asp:BoundField DataField="SiteMainText" HeaderText="Text" SortExpression="SiteMainText" />
            </Fields>
        </asp:DetailsView>
        <asp:SqlDataSource ID="SqlDataSourceDetal" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionStringDetal %>"
            ProviderName="<%$ ConnectionStrings:ConnectionStringDetal.ProviderName %>" SelectCommand="SELECT [SiteMainID], [SiteMainIdentity], [SiteMainText] FROM [MainSiteText] WHERE ([SiteMainID] = @SiteMainID)">
            <SelectParameters>
              <asp:ControlParameter ControlID="GridView1" Name="SiteMainID" PropertyName="SelectedValue"
                Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>
    </div>
    </form>
</body>
</html>
Avatar billede dr_chaos Nybegynder
28. januar 2007 - 20:50 #7
<Fields>
              <asp:BoundField DataField="SiteMainID" HeaderText="ID" ReadOnly="True" SortExpression="SiteMainID" />
              <asp:BoundField DataField="SiteMainIdentity" HeaderText="Identity" SortExpression="SiteMainIdentity" />
              <asp:BoundField DataField="SiteMainText" HeaderText="Text" SortExpression="SiteMainText" />
<ASp:templateField>
<itemtemplate>
<CE:Editor id="Editor1" EditorWysiwygModeCss="../example.css" Text='<%# Bind("SiteMainText") %>'  runat="server" ></CE:Editor>
</itemtemplate>
</ASp:templateField>
            </Fields>
Avatar billede tjgrindsted Nybegynder
29. januar 2007 - 00:43 #8
ja det virker som det skal men hvordan kan jeg så lave en updater knap så når jeg har rettet i <CE:Editor id="Editor1" EditorWysiwygModeCss="../example.css" Text='<%# Bind("SiteMainText") %>'  runat="server" ></CE:Editor> for den record jeg vil rette så bliver det gemt !?

Min kode er som mit sidste indlæg + din kode.
Avatar billede dr_chaos Nybegynder
29. januar 2007 - 08:04 #9
du kan gøre det på et par måder:

<asp:DetailsView HeaderText="Details" AutoGenerateEditButton="true" ID="DetailsView1" runat="server" Height="50px" Width="125px" AutoGenerateRows="False" DataKeyNames="SiteMainID" DataSourceID="SqlDataSourceDetal">

eller

<Fields>
              <asp:BoundField DataField="SiteMainID" HeaderText="ID" ReadOnly="True" SortExpression="SiteMainID" />
              <asp:BoundField DataField="SiteMainIdentity" HeaderText="Identity" SortExpression="SiteMainIdentity" />
              <asp:BoundField DataField="SiteMainText" HeaderText="Text" SortExpression="SiteMainText" />
<ASp:templateField>
<itemtemplate>
<CE:Editor id="Editor1" EditorWysiwygModeCss="../example.css" Text='<%# Bind("SiteMainText") %>'  runat="server" ></CE:Editor>
</itemtemplate>
<EditItemTemplate>
<CE:Editor id="Editor1" EditorWysiwygModeCss="../example.css" Text='<%# Bind("SiteMainText") %>'  runat="server" ></CE:Editor>
</EditItemTemplate>
</ASp:templateField>
<asp:TemplateField>
                        <ItemTemplate>
                            <asp:Button Text="Edit" CommandName="Edit" CausesValidation="false" runat="server"
                                ID="btEdit" />
                        </ItemTemplate>
                        <EditItemTemplate>
                            <asp:Button Text="Update" CommandName="Update" CausesValidation="true" runat="server"
                                ID="btUpdate" ValidationGroup="ucvalProducts" UseSubmitBehavior="true" />
                            <asp:Button Text="Cancel" CommandName="Cancel" CausesValidation="false" runat="server"
                                ID="btCancel" />
                        </EditItemTemplate>
                    </asp:TemplateField>
            </Fields>
Avatar billede tjgrindsted Nybegynder
29. januar 2007 - 17:59 #10
jeg får denne fejl

Serverfejl i programmet '/database_conn_eks'.
--------------------------------------------------------------------------------

Opdatering understøttes ikke af datakilden 'SqlDataSourceDetal', medmindre UpdateCommand er angivet.
Beskrivelse: Der opstod en undtagelse, der ikke blev behandlet, under udførelse af den aktuelle webanmodning. Se staksporingen for at få yderligere oplysninger om fejlen, og hvor den kom fra i koden.

Detaljer om undtagelse: System.NotSupportedException: Opdatering understøttes ikke af datakilden 'SqlDataSourceDetal', medmindre UpdateCommand er angivet.

Kildefejl:

Der blev oprettet en undtagelse, der ikke blev behandlet,  under kørsel af den aktuelle webanmodning. Du kan finde oplysninger om undtagelsens oprindelse og placering ved hjælp af nedenstående staksporing af undtagelser. 

Staksporing:


[NotSupportedException: Opdatering understøttes ikke af datakilden 'SqlDataSourceDetal', medmindre UpdateCommand er angivet.]
  System.Web.UI.WebControls.SqlDataSourceView.ExecuteUpdate(IDictionary keys, IDictionary values, IDictionary oldValues) +740
  System.Web.UI.DataSourceView.Update(IDictionary keys, IDictionary values, IDictionary oldValues, DataSourceViewOperationCallback callback) +78
  System.Web.UI.WebControls.DetailsView.HandleUpdate(String commandArg, Boolean causesValidation) +1153
  System.Web.UI.WebControls.DetailsView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +450
  System.Web.UI.WebControls.DetailsView.OnBubbleEvent(Object source, EventArgs e) +88
  System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35
  System.Web.UI.WebControls.DetailsViewRow.OnBubbleEvent(Object source, EventArgs e) +109
  System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35
  System.Web.UI.WebControls.Button.OnCommand(CommandEventArgs e) +86
  System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +155
  System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
  System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
  System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
  System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4921




er det fordi dette skal rettes til så den også kan updater og hvis jeg hvordan bør den så se ud !?

<asp:SqlDataSource ID="SqlDataSourceDetal" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionStringDetal %>"
            ProviderName="<%$ ConnectionStrings:ConnectionStringDetal.ProviderName %>" SelectCommand="SELECT [SiteMainID], [SiteMainIdentity], [SiteMainText] FROM [MainSiteText] WHERE ([SiteMainID] = @SiteMainID)">
            <SelectParameters>
              <asp:ControlParameter ControlID="GridView1" Name="SiteMainID" PropertyName="SelectedValue"
                Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>
Avatar billede dr_chaos Nybegynder
29. januar 2007 - 18:33 #11
Du skal tilføje en update command til sql datasourcen.
Avatar billede tjgrindsted Nybegynder
29. januar 2007 - 19:02 #12
Hej dr chaos

Jeg har lavet dette under SelectCommand:

UpdateCommand="UPDATE [MainSiteText] SET [SiteMainText]=@SiteMainText WHERE [SiteMainID]=@SiteMainID">

og nu kan jeg klikke updater mm. men den laver ikke ændringerne det er somom den ikke får de rigtige data. ved ikke om @SiteMainText eller/og @SiteMainID er rigtig i mit tilfælde.

Kan du evt hjælpe.
Avatar billede dr_chaos Nybegynder
29. januar 2007 - 20:09 #13
paste lige din kode.
Avatar billede tjgrindsted Nybegynder
29. januar 2007 - 21:49 #14
Min kode er:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="test.aspx.vb" Inherits="test_Default" %>
<%@ Register TagPrefix="CE" Namespace="CuteEditor" Assembly="CuteEditor" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:SqlDataSource ID="SqlDataSourceSub" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionStringSub %>"
            ProviderName="<%$ ConnectionStrings:ConnectionStringSub.ProviderName %>" SelectCommand="SELECT * FROM [MainSiteText] ORDER BY [SiteMainID]">
        </asp:SqlDataSource>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="SiteMainID"
            DataSourceID="SqlDataSourceSub">
            <Columns>
                <asp:CommandField ShowSelectButton="True" />
                <asp:BoundField DataField="SiteMainID" HeaderText="SiteMainID" InsertVisible="False"
                    ReadOnly="True" SortExpression="SiteMainID" />
                <asp:BoundField DataField="SiteMainIdentity" HeaderText="SiteMainIdentity" SortExpression="SiteMainIdentity" />
                <asp:BoundField DataField="SiteMainText" HeaderText="SiteMainText" SortExpression="SiteMainText" />
                <asp:BoundField DataField="SiteMainID" HeaderText="ID" ReadOnly="True" SortExpression="SiteMainID" />
            </Columns>
        </asp:GridView>
       
        <asp:DetailsView HeaderText="Details" ID="DetailsView1" runat="server" Height="50px" Width="125px" AutoGenerateRows="False" DataKeyNames="SiteMainID" DataSourceID="SqlDataSourceDetal">
            <Fields>
              <asp:BoundField DataField="SiteMainID" HeaderText="ID" ReadOnly="True" SortExpression="SiteMainID" />
              <asp:BoundField DataField="SiteMainIdentity" HeaderText="Identity" SortExpression="SiteMainIdentity" />
              <asp:BoundField DataField="SiteMainText" HeaderText="Text" SortExpression="SiteMainText" />
              <asp:templateField>
                <itemtemplate>
                <CE:Editor id="Editor1" EditorWysiwygModeCss="../example.css" Text='<%# Bind("SiteMainText") %>'  runat="server" ></CE:Editor>
                </itemtemplate>
                <EditItemTemplate>
                <CE:Editor id="Editor1" EditorWysiwygModeCss="../example.css" Text='<%# Bind("SiteMainText") %>'  runat="server" ></CE:Editor>
                </EditItemTemplate>
              </asp:templateField>
              <asp:TemplateField>
                        <ItemTemplate>
                            <asp:Button Text="Edit" CommandName="Edit" CausesValidation="false" runat="server"
                                ID="btEdit" />
                        </ItemTemplate>
                        <EditItemTemplate>
                            <asp:Button Text="Update" CommandName="Update" CausesValidation="true" runat="server"
                                ID="btUpdate" ValidationGroup="ucvalProducts" UseSubmitBehavior="true" />
                            <asp:Button Text="Cancel" CommandName="Cancel" CausesValidation="false" runat="server"
                                ID="btCancel" />
                        </EditItemTemplate>
                    </asp:TemplateField>
            </Fields>
        </asp:DetailsView>
        <asp:SqlDataSource ID="SqlDataSourceDetal" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionStringDetal %>"
            ProviderName="<%$ ConnectionStrings:ConnectionStringDetal.ProviderName %>"
            SelectCommand="SELECT [SiteMainID], [SiteMainIdentity], [SiteMainText] FROM [MainSiteText] WHERE ([SiteMainID] = @SiteMainID)"
            UpdateCommand="UPDATE [MainSiteText] SET [SiteMainText]=@SiteMainText WHERE [SiteMainID]=@SiteMainID">
            <SelectParameters>
              <asp:ControlParameter ControlID="GridView1" Name="SiteMainID" PropertyName="SelectedValue"
                Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>
    </div>
    </form>
</body>
</html>
Avatar billede dr_chaos Nybegynder
29. januar 2007 - 21:52 #15
fjern <asp:BoundField DataField="SiteMainText" HeaderText="Text" SortExpression="SiteMainText" />  fra detailsview.
Avatar billede tjgrindsted Nybegynder
29. januar 2007 - 22:28 #16
den går fint ind osv men vil ikke updater teksten fra min DB den reloader efter klik og viser den gamle tekst igen.
Avatar billede dr_chaos Nybegynder
30. januar 2007 - 07:14 #17
du skal fjerne <asp:BoundField DataField="SiteMainText" HeaderText="Text" SortExpression="SiteMainText" /> fra dit detailsview.
Avatar billede tjgrindsted Nybegynder
30. januar 2007 - 09:21 #18
den er blevet fjernet men vil stadigvæk ikke updaterer.
Avatar billede dr_chaos Nybegynder
30. januar 2007 - 15:05 #19
prøv at bruge onupdating event på detailsview til at undersøge de værdier som sendes til datasource.
Avatar billede tjgrindsted Nybegynder
30. januar 2007 - 17:20 #20
Mangler jeg forresten ikke noget a'la

<UpdateParameters>
  <asp:ControlParameter Name="SiteMainText" ControlId="Editor1" PropertyName="Text"/>  <asp:ControlParameter Name="SiteMainIdentity" ControlId="DetailsView1" PropertyName="Text"/>
  <asp:ControlParameter Name="SiteMainID" ControlID="GridView1" PropertyName="SelectedValue" Type="String" />
</UpdateParameters>
Avatar billede dr_chaos Nybegynder
30. januar 2007 - 17:33 #21
Jo det skal bare være:
<UpdateParameters>
    <asp:Parameter Type="String" Name="SiteMainText"></asp:Parameter>
    <asp:Parameter Type="SiteMainID" Name="ID"></asp:Parameter>
  </UpdateParameters>
Avatar billede tjgrindsted Nybegynder
30. januar 2007 - 18:12 #22
får denne fejl

Meddelelse om parserfejl: Der kan ikke oprettes et objekt af typen 'System.TypeCode' fra dets strengrepræsentation 'SiteMainID' for egenskaben 'Type'.

Kildefejl:


Linje 61:            <UpdateParameters>
Linje 62:              <asp:Parameter Type="String" Name="SiteMainText"></asp:Parameter>
Linje 63:              <asp:Parameter Type="SiteMainID" Name="ID"></asp:Parameter>
Linje 64:            </UpdateParameters>
Linje 65:        </asp:SqlDataSource>
Avatar billede dr_chaos Nybegynder
30. januar 2007 - 18:15 #23
<UpdateParameters>
    <asp:Parameter Type="String" Name="SiteMainText"></asp:Parameter>
    <asp:Parameter Type="Int32" Name="SiteMainID" ></asp:Parameter>
  </UpdateParameters>
Avatar billede tjgrindsted Nybegynder
30. januar 2007 - 19:09 #24
Jeg fatter det ikke, den vil kun reloade og vise gammel tekst når jeg klikker update.

når du snakker om OnUpdating Event, skal jeg sætte dette ind i min asp:SqlDataSource

OnUpdating="On_Sql_Updating"
OnUpdated ="On_Sql_Updated">

og så sætte dette ind i toppen af min side

<script runat="server">

Sub On_Sql_Updating(ByVal source As Object, ByVal e As SqlDataSourceCommandEventArgs)
    Dim command as DbCommand
    Dim connection as DbConnection
    Dim transaction as DbTransaction
   
    command    = e.Command
    connection = command.Connection   
    connection.Open()   
    transaction = connection.BeginTransaction()
    command.Transaction = transaction

End Sub 'On_Sql_Updating

Sub On_Sql_Updated(ByVal source As Object, ByVal e As SqlDataSourceStatusEventArgs)

    Dim command As DbCommand
    Dim transaction As DbTransaction
   
    command = e.Command
    transaction = command.Transaction
   

    Dim OtherProcessSucceeded as Boolean = True
   
    If (OtherProcessSucceeded) Then
        transaction.Commit()
        Label2.Text="The record was updated successfully!"
    Else   
        transaction.Rollback()
        Label2.Text="The record was not updated."
    End If
End Sub ' On_Sql_Updated
</script>
Avatar billede tjgrindsted Nybegynder
30. januar 2007 - 19:11 #25
eller skal dette med

Sub On_Click(ByVal source As Object, ByVal e As EventArgs)
        SqlDataSourceDetal.Update()
End Sub 'On_Click
Avatar billede tjgrindsted Nybegynder
07. februar 2007 - 19:37 #26
lukker
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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