Zum Inhalt springen

Street Samurai

Mitglieder
  • Gesamte Inhalte

    15
  • Benutzer seit

  • Letzter Besuch

  1. Bitte zwingt mich jetzt nicht es zu erklären, es ist noch nicht ganz fertig, aber meine Problemstellung die ich hatte ist gelöst. Für Leute die ein Ähnliches Problem hatten : Use XXX --Declare @QDB as varchar(200) --Declare @ZDB as varchar(200) Declare @QT as varchar(200) Declare @ZT as varchar(200) Declare @QID as int Declare @ZID as int Declare @Datatype as varchar(200) Declare @DatatypeVergleicher as varchar(200) Declare @MaxLength as int Declare @Length as int Declare @SQL as varchar(2000) --Set @QDB = 'XXX' --Set @ZDB = 'XXX' --Set @QDB = @QDB + '.sys.objects' Set @QT= 'XXX' Set @ZT= 'XXX' Set @QID=(Select object_id from sys.objects where name = @QT) Set @ZID=(Select object_id from sys.objects where name = @ZT) PRINT 'Abgleich von "'+@QT+'" mit "'+@ZT+'"...' PRINT '---------------------------------------------------------------------------------------' PRINT 'Löschen von Spalten, die in der Zieltabelle aber nicht in der Quelltabelle vorkommen...' Declare @Feldname as Varchar(200) Declare NameFZDel Cursor for SELECT ZSpalten.Name FROM (Select [Name] from sys.syscolumns Where ID =@QID) QSpalten RIGHT OUTER JOIN (Select [Name] from sys.syscolumns Where ID =@ZID) ZSpalten ON QSpalten.Name = ZSpalten.Name Where QSpalten.Name is null OPEN NameFZDel FETCH NEXT FROM NameFZDel INTO @Feldname WHILE @@FETCH_STATUS = 0 BEGIN PRINT @Feldname Execute ('ALTER TABLE '+@ZT+' DROP COLUMN '+ @Feldname) FETCH NEXT FROM NameFZDel INTO @Feldname END CLOSE NameFZDel DEALLOCATE NameFZDel ------------------------------- PRINT '--------------------------------------------------------' PRINT 'Hinzufügen nicht vorhandener Tabellen bei Zieltabelle...' Declare NameFZAdd Cursor for SELECT QSpalten.Name FROM (Select [Name] from sys.syscolumns Where ID =@QID) QSpalten left OUTER JOIN (Select [Name] from sys.syscolumns Where ID =@ZID) ZSpalten ON QSpalten.Name = ZSpalten.Name Where ZSpalten.Name is null OPEN NameFZAdd FETCH NEXT FROM NameFZAdd INTO @Feldname WHILE @@FETCH_STATUS = 0 BEGIN SELECT sys.columns.object_id, sys.columns.name, sys.columns.column_id, sys.columns.system_type_id, sys.types.name As Expr1, sys.columns.max_length,sys.Types.max_length, sys.columns.precision, sys.columns.is_nullable, sys.columns.is_identity FROM sys.types INNER JOIN sys.columns ON sys.types.user_type_id = sys.columns.user_type_id WHERE (sys.columns.object_id = @QID and sys.columns.name = @Feldname) Set @Datatype = (SELECT sys.types.name FROM sys.types INNER JOIN sys.columns ON sys.types.user_type_id = sys.columns.user_type_id WHERE sys.columns.object_id = @QID and sys.columns.name = @Feldname) Set @MaxLength = (SELECT sys.Types.max_length FROM sys.types INNER JOIN sys.columns ON sys.types.user_type_id = sys.columns.user_type_id WHERE sys.columns.object_id = @QID and sys.columns.name = @Feldname) PRINT @Feldname PRINT @Datatype If @MaxLength = 8000 Begin Set @Length = (SELECT sys.Columns.max_length FROM sys.types INNER JOIN sys.columns ON sys.types.user_type_id = sys.columns.user_type_id WHERE sys.columns.object_id = @QID and sys.columns.name = @Feldname) PRINT 'Length: ' + Cast(@Length as Varchar(20)) Execute ('ALTER TABLE '+@ZT+' ADD '+@Feldname+' '+@Datatype+'('+@Length+')') End Else Begin Execute('ALTER TABLE '+@ZT+' ADD '+@Feldname+' '+@Datatype) End PRINT 'MaxLength: ' + Cast(@MaxLength as Varchar(20)) FETCH NEXT FROM NameFZAdd INTO @Feldname END CLOSE NameFZAdd DEALLOCATE NameFZAdd --Datentypabgleich PRINT '----------------------------' Print 'Abgleichen der Datentypen...' Declare NameFZDatatypeAbgleich Cursor for SELECT QSpalten.Name FROM (Select [Name] from sys.syscolumns Where ID =@QID) QSpalten INNER JOIN (Select [Name] from sys.syscolumns Where ID =@ZID) ZSpalten ON QSpalten.Name = ZSpalten.Name OPEN NameFZDatatypeAbgleich FETCH NEXT FROM NameFZDatatypeAbgleich INTO @Feldname WHILE @@FETCH_STATUS = 0 BEGIN Set @Datatype = (SELECT sys.types.name FROM sys.types INNER JOIN sys.columns ON sys.types.user_type_id = sys.columns.user_type_id WHERE sys.columns.object_id = @QID and sys.columns.name = @Feldname) Set @DatatypeVergleicher = (SELECT sys.types.name FROM sys.types INNER JOIN sys.columns ON sys.types.user_type_id = sys.columns.user_type_id WHERE sys.columns.object_id = @ZID and sys.columns.name = @Feldname) Set @MaxLength = (SELECT sys.Types.max_length FROM sys.types INNER JOIN sys.columns ON sys.types.user_type_id = sys.columns.user_type_id WHERE sys.columns.object_id = @QID and sys.columns.name = @Feldname) if @Datatype != @DatatypeVergleicher Begin If @MaxLength = 8000 Begin Set @Length = (SELECT sys.Columns.max_length FROM sys.types INNER JOIN sys.columns ON sys.types.user_type_id = sys.columns.user_type_id WHERE sys.columns.object_id = @QID and sys.columns.name = @Feldname) PRINT 'Length: ' + Cast(@Length as Varchar(20)) Execute ('ALTER TABLE '+@ZT+' ALTER COLUMN '+@Feldname+' '+@Datatype+'('+@Length+')') End Else Begin Execute('ALTER TABLE '+@ZT+' ALTER COLUMN '+@Feldname+' '+@Datatype) End Print @Feldname Print @Datatype Print @DatatypeVergleicher End FETCH NEXT FROM NameFZDatatypeAbgleich INTO @Feldname END CLOSE NameFZDatatypeAbgleich DEALLOCATE NameFZDatatypeAbgleich
  2. Sinn erkennt man erst wenn man weiß , wofür eine Sinnlosigkeit verwendet wird. Denkt ihr nicht auch ? Um Abhilfe zu schaffen folgendes : Wir haben u.a. 2 Tabellen in unserer DB - User und User_Del In der User Tab sind die User drin. (Wer hätte das gedacht ) und in die User_Del kommen die User , die durch einen Button auf unserer Webadmin Fläche gelöscht werden. Nun was denkt ihr was passiert wenn man eine INSERT INTO auf eine Tabelle anwendet und der dann Spalten für mitgegebene Datensätze fehlen ? Richtig, es funktioniert nicht. Da leider bei uns öfters jemand mal die User Tab ändert aber die User_Del in Ruhe lässt (Gott weiß warum da nie jemand denkt) und unser System User auch automatisch löscht (Nach ner gewissen Zeit ohne Anmeldung), passiert es schnell das wir 80 User haben die sich nicht einloggen können, aber nirgends als gelöscht dokumentiert sind. Deshalb ein Auto-Abgleich für die Auto-Löschung. Wer mir jetzt kommt mit "Warum nicht irgend ein Ja/Nein Feld für gelöschte User und alles in eine Tabelle machen?" Die Diskussion hatte ich bereits mim Chef Antwort : "So isses und nur so wirds gemacht." Trotzdem danke an Jeglalf , ich werd das Montag mal austesten.
  3. Also die Sache ist simpel, leider bin ich ein kompletter T-SQL Anfänger und habe keine Ahnung wie ich überhaupt anfangen soll. Nachdem ich mich grade totgegoogelt hab wende ich mich an euch. Ich habe 2 Tabellen Table1 : SpalteA SpalteB SpalteC SpalteD Table2 : SpalteA SpalteB SpalteE SpalteF Jetzt will ich mit einer gespeicherten Prozedur folgendes machen : Alles was in Table1 drin ist, aber nicht in Table2 soll in Table 2 rein Hier : Spalte C und D in Table2 kopieren. Alles was in Table2 drin ist, aber nicht in Table1 soll in Table2 gelöscht werden Hier : Spalte E und F in Table2 löschen Die Datentypen der Spalten sollten beim kopieren übernommen werden. Die Datensätze die in den Tabellen stehen sind egal/ müssen nicht übernommen werden es geht nur um die Architektur der Tabelle (Table2 ist eine Auslagerungstabelle für Table1, sie müssen nur identisch sein weil sonst ein Kopiervorgang fehlerhaft ist wenn wieder irgendjemand was an Table1 rumgebastelt hat). Ich danke im Vorraus jeglicher Hilfestellung, Anregung oder Lösung und Geduld mit mir T-SQL Noob.
  4. Nun, bei uns gibt es auch welche die am liebsten fortlaufen würden. Aber ich denke es gibt immer zwei Seiten der Medallie. Der Ausbildungsbetrieb und der Azubi. Wir hatten hier auch einen der kündigen wollte weil er total enttäuscht war von seiner Tätigkeit als SE. Dann haben sie ihn an einen FISI Arbeitsplatz gepackt und dort ist er glücklich geworden. Persönliche Forderungen an einen Ausbildungsplatz varieren stark von Mensch zu Mensch, vorallem wie groß die Vorkenntnisse des Jeweiligen sind. Und dass es, so wie in deinem Fall, viele Leute gibt die mit dem Ausbildungsprinzip der Telekom nicht zufrieden sind ist mir bekannt. Auch glaube ich dir dass es Leute gibt die einen mit nicht ausbildungsbezogenen Tätigkeiten beauftragen. Nur muss man dabei bedenken dass die Telekom Deutschlands größter Ausbilder ist und somit öfter solche Fälle auftreten als bei Systemhaus Irgendwo und Umkreis. Entscheidend ist am Ende immernoch was man selbst draus macht. Es gibt immernoch genug Instanzen an die man sich wenden kann wenn einem was nicht passt (Ausbilder, Auszubildenenvertretung und wenn alle Stricke reißen zum IHK-Beauftragten). Ich bestreite hiermit aber nicht den Extremfall, den habe ich auch schon bei anderen Kollegen miterlebt. OT : Angegriffen direkt habe ich mich nicht gefühlt. Nur diese Verallgemeinerung hat mich gestört. Ich konnte das nicht so stehenlassen - mein Ausbilder müht sich mit fast 30 (bald kommen nochma ca 10 dazu) Azubis ab und macht immernoch ne Klasse Arbeit. Dein "Saftladen-Argument" und dieses "das ist überall so" ist wie wenn ich sage Apple ist kompletter Dreck nur weil mir mein IPod nach 2 Wochen kaputt gegangen ist, ich mit einem MacBook aber jahrelang Freude haben könnte. Was meinste wie mich die Apple User in den Boden stampfen würden
  5. Ich würde den Mund nicht so voll nehmen. Telekom hatte erst vor ner Weile den besten FISI Deutschlands ausgebildet. Der kommt auch aus meinem Wohnort und war an meinem Standort beschäftigt. Mein Ausbilder ist immer noch schwer begeistert von ihm. Ich weiß also von was ich rede. Du kannst nicht einfach einen bundesweiten Ausbildungsbetrieb verallgemeinern nur weils bei dir nicht gut läuft und du selbst keine Motivation hast was zu lernen. Vielleicht ist es dir während den Welcome-Days der Telekom nicht aufgefallen, aber hier geht es um Lernbegleitung. Du lernst und der Ausbilder ist da wenn es Probleme gibt oder es nicht so ganz läuft. Wenn du mit allem gefüttert werden willst dann geh in eine Schule zu einem Lehrer. Ich habe hier auch öfters Aufgaben die mir keinen Spass machen und eher wenig fordernd sind (Administration, Wartung etc), aber das gehört auch zum Arbeitsalltag und auf den soll man auch vorbereitet werden. Also Gentlemen : Mit viel Fleiss und ein bisschen Glück habt ihr bei der Telekom eine super Ausbildung. Schwarze Schafe gibt es überall. Ich habe einen Todesmotivierten Ausbilder , den ich jederzeit kontaktieren kann wenn was nicht passt. Trotzdem muss und tut er mich nicht die ganze Zeit Babysitten. Wer denkt er kann sich hinsetzten und alles eingeprügelt kriegen, sollte sich das mit der Ausbildung nochmal überlegen.
  6. Also zusammenfassend : Es gibt einiges günstiger, aber nicht alles. Selten bis gar nicht gibts was umsonst. Du kannst deine/n Ausbilder/in ansprechen wo denn im Intranet (Firmennetz) das Mitarbeiterportal ist. Dort haste dann die ganze Auswahl. Zum arbeiten ist genug da, ein Netbook oder Laptop ist in der Berufsschule ganz praktisch. In der BBi wirst du höchstwahrscheinlich ein paar Rechner haben an denen du nur im Intranet angebunden bist. Die restlichen haben eine normale Internetverbindung ohne Intranet. Später, je nachdem wo du bist gibt es auch PCs die beides haben. Vorsicht ist trotzdem geboten. z.B. ist der Download von ausführbaren Dateien (.exe) ist generell untersagt. (Absprachen mit Ausbilder/Betriebskraft ist natürlich ein anderer Schuh. Aber bitte net einfach auf jedem Rechner dein geliebtes Photoshop (erst recht nicht mit einer illegalen Lizenz) oder Winamp installiern.) Du wirst am Anfang einen Wisch unterschreiben dass du dich zur Einhaltung dieser Regelungen verpflichtest. Merke, es kostet deinen Job wenns schlecht daher geht und meistens kann man da nix mehr dran machen wenn der Chef so da steht : :mod:
  7. Ich hab damals auch in der Schule mit BlueJ ein Rollenspiel programmiert. Dieses war dann aber nur Text-Based, aber es war ne beschäftigung für den langweiligen Java Unterricht mit nem Lehrer der jede Stunde 5 mal wiederholt hat. Anmerken muss man noch, das BlueJ eigentlich eher für Fachkonzepte geeignet ist und nicht für selbstständige Anwendungen. Wenn ich mit meiner Vermutung richtig gehe, habt ihr vielleicht JBuilder bei euch in der Schule. Damit kannst du ziemlich komfortabel eine Oberfläche erstellen und deine BlueJ Klassen einbinden. Bei Open-GL und sonstigem grafischen Zeug kenn ich mich leider nicht aus. Wie gesagt, ich hab nur Variabeln rumgeschubst.
  8. @SoL oops... meinte natürlich das qualifizierte Zeugnis.
  9. Du kriegst bei der Telekom als Mitarbeiter 30 % auf Tarife. Nicht aber auf Hardware. Kannst nen web'n'walk Tarif abschließen wo nen Notebook dabei ist. Da bekommst dann 30 %. Aber einfach nur Laptop gibts net billiger. Und jetzt kommt mir net mit "Bei uns ging des aber". Mir sind solche Fälle bekannt, ist aber keine Normalität.
  10. Du wirst zu 100 % keinen "geschenkt" bekommen. Denk an meine Worte wenn du deinen 1 GB USB-Stick in der Hand hälst. :bimei Dir wird höchstens ein Laptop zur Verfügung gestellt. Den du dann allerdings nur auf der Arbeit benutzen darfst und nicht mit heim geschweige denn in die Berufschule nehmen. Tipp : Netbook kaufen. Mit auf Arbeit und BS nehmen. Aber NIE in das Firmennetz einklinken damit (Außer du willst in der Probezeit entlassen werden). Ich mach das so und benutze mein Netbook nur für Dokumentationen wärend der Arbeit (Und das wirste hier viel machen müssen) und mitschreiben (oder wenns langweilig ist : daddeln) in der BS (Das wirste auch oft machen "müssen" ). Zum arbeiten gibts genug PCs bei der Telekom. Merke : Wenn du ein System nicht ausschließlich für geschäftliche Zwecke benutzen tust, dann solltest es nie an ein geschäftliches System anschließen etc.
  11. Bei der Telekom kannst du, als FISI wohlgemerkt, viel lernen. Wenn du in Richtung IT gehen willst. Die Ausbilder checken schnell wo deine Stärken sind (Programmierung,Netzwerk,Hardware etc) und versuchen dich drauf zu spezialisieren. Manche bei uns haben sogar in ihren FISI "Gesellenbrief" die Eignung zum Anwendungsentwickler drin vermerkt. Du hast dich ja nun eh bereits entschieden und ich will da keine Wertung abgeben ob es gut oder schlecht war. Solange du motiviert bist, kannst du überall was lernen.
  12. mailto ist zu schwach, es bekommt leider nicht das übernehmen der mBody-Variable auf die Reihe und ein manuelles reinschreiben verhindern mehrere Anführungszeichen im HTML Code. Genau wie Amstelchen sagt (Ich hoffe ich nehme deine Aussage so richtig auf). Sollte es gar nicht möglich sein wenn man im Web auf irgendetwas klickt und aufeinmal öffnen sich lokal Programme (eventuell auch wie bei meinem Beispiel mit Parametern). Das wäre ja extrem schön, ich würde nirgends mehr surfen. Ich werde nun eine andere Lösungsart ausarbeiten. Danke euch trotzdem für eure Zeit und Ratschläge.
  13. Also ersteinmal : ja es ist eine Webanwendung. Nochmal zum Ablauf : User betritt Seite und füllt die notwendigen Felder aus. -> Outlook öffnet sich mit Formular indem die davor gemachten Angaben eingetragen sind. (Das ist nun keinerlei Script o.ä. nur HTML Code in einer HTML Mail.) User drückt auf Senden -> "Bitte ID-Card in Lesegerät einstecken". etc etc fertig. Mailversand via Server ist in diesem Fall von keinem Nutzen, da der User dort nicht digital signieren kann, weil es bei diesem System nur im Outlook geht (Ist nicht meine Erfindung...). Btw hat dieser Server auch kein Outlook installiert. Zu Argbeil : Ja diese Möglichkeit habe ich Anfangs auch in Betracht gezogen und vorgeschlagen, aber Chef will es nicht so.
  14. Ich entschuldige mich übrigends , dass ich nicht in den Thread Titel die Programmiersprache und das Framework erwähnt habe, sowie mein Doppelpost den ich hiermit begehe. Hier im Geschäft will der IE (igitt) nicht so wie ich will, sprich ich kann meinen Beitrag nicht editieren. Die Sprache ist VB.NET das Framework weiß ich grad nicht *schäm* :floet:
  15. Hallo zusammmen. Als frisch gebackener FiSi Azubi bin ich zurzeit in einem Betrieb tätig der ein Tool betreibt, in dem unserem Vertriebssegment Daten bereitgestellt werden. Nun will mein Chef ein neues Feature eingebaut haben, dass es ermöglicht den Anmelde-Antrag via Mail zu verschicken. Diese Mail wird dann digital mit einer persönlichen ID-Card signiert, was die Unterschrift darstellt (davor lief alles über Fax). Nun zu meinem Problem : Ich habe die Funktion codiert und es klappt alles wunderbar : Outlook wird geöffnet, neue Mail wird erstellt, Header wird ausgefüllt, Body wird ausgefüllt - Ja sogar das Häckchen bei "digital signieren" wird automatisch gesetzt. Leider funktioniert das nur auf meinem Entwicklungs-PC, sobald ich ein Update auf den Server scharf stelle will es dort nicht mehr. Grund : Die Funktion will dann auf dem Server Outlook öffnen. Dort ist allerdings kein Outlook installiert. Frage nun : wie bekomme ich die Funktion dazu Outlook nicht beim Server sondern beim User zu starten + Parameter für die Mail-Eigenschaften mitzugeben. Anbei Code : '-----------Anweisungen um Outlook zu öffnen------------ 'Deklarierung der Objecte OutApp und Nachricht Dim OutApp As Object Dim Nachricht As Object 'Outlook öffnen mit CreateObject OutApp = CreateObject("Outlook.Application") 'Neue Nachricht erstellen via CreateItem Nachricht = OutApp.CreateItem(0) With Nachricht 'Parameter für die Werte der Nachricht' .To = "chef@unternehmen.de" .CC = "chef2@unternehmen.de" .Subject = "Antrag" .htmlBody = mBody End With 'Nachricht anzeigen Nachricht.Display() Dim oDigSign Dim oCBs oDigSign = Nachricht.GetInspector.CommandBars.FindControl(, 719) If oDigSign Is Nothing Then oCBs = Nachricht.GetInspector.CommandBars oDigSign = oCBs.Item("Standard").Controls.Add(, 719, , , True) End If ' Check ob Button Enabled ist. If oDigSign.Enabled = True Then ' Check ob Button Häckchen hat. If oDigSign.State = 0 Then oDigSign.Execute() Else MsgBox("Ihr Outlook unterstützt keine digitale Signierung. " & _ "Diese Mail kann nicht signiert versendet werden") End If oCBs = Nothing oDigSign = Nothing OutApp = Nothing Nachricht = Nothing Das ist so funktionsfähig und läuft wie geplant und erwünscht. Aber wie gesagt nur lokal aus dem Grund wie oben beschrieben.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...