Zum Inhalt springen

SirTom

Mitglieder
  • Gesamte Inhalte

    17
  • Benutzer seit

  • Letzter Besuch

Beiträge von SirTom

  1. Hallo zusammen,

    ich bin langsam am verzweifeln. Erst dachte ich das kann doch nicht so schwer sein und nun hänge ich irgendwie fest...

    Folgende Problemstellung:

    Ich habe Rohdaten in einer CSV-Datei, die ich täglich via ODBC geliefert bekomme.

    
    sort;woche;kategorie;gruppe;wert
    
    748;"51. KW";"sonstige Fahrzeuge";Schiffe;10
    
    748;"51. KW";Landfahrzeuge;Motorräder;200
    
    748;"51. KW";Landfahrzeuge;Automobile;150
    
    748;"51. KW";"sonstige Fahrzeuge";Flugzeuge;52
    
    749;"52. KW";"sonstige Fahrzeuge";Schiffe;74
    
    749;"52. KW";Landfahrzeuge;Motorräder;85
    
    749;"52. KW";Landfahrzeuge;Automobile;30
    
    749;"52. KW";"sonstige Fahrzeuge";Flugzeuge;10
    
    750;"1. KW";Landfahrzeuge;Motorräder;2
    
    750;"1. KW";Landfahrzeuge;Automobile;0
    
    750;"1. KW";"sonstige Fahrzeuge";Schiffe;0
    
    750;"1. KW";"sonstige Fahrzeuge";Flugzeuge;6
    
    751;"2. KW";Landfahrzeuge;Automobile;0
    
    751;"2. KW";"sonstige Fahrzeuge";Flugzeuge;125
    
    751;"2. KW";Landfahrzeuge;Motorräder;5
    
    751;"2. KW";"sonstige Fahrzeuge";Schiffe;89
    
    752;"3. KW";"sonstige Fahrzeuge";Flugzeuge;15
    
    752;"3. KW";"sonstige Fahrzeuge";Schiffe;87
    
    752;"3. KW";Landfahrzeuge;Motorräder;54
    
    752;"3. KW";Landfahrzeuge;Automobile;12
    
    753;"4. KW";"sonstige Fahrzeuge";Flugzeuge;0
    
    753;"4. KW";"sonstige Fahrzeuge";Schiffe;13
    
    753;"4. KW";Landfahrzeuge;Motorräder;14
    
    753;"4. KW";Landfahrzeuge;Automobile;0
    
    
    Diese Daten muss ich in folgendem vorgegebenen Format ausgeben: tabelle.jpg Ich habe den Hinweis bekommen folgendes Array daraus zu basteln:
    
    Array
    
    (
    
        [51. KW] => Array
    
            (
    
                [sonstige Fahrzeuge] => Array
    
                    (
    
                        [Schiffe] => 10
    
                        [Flugzeuge] => 52
    
                    )
    
    
                [Landfahrzeuge] => Array
    
                    (
    
                        [Motorräder] => 200
    
                        [Automobile] => 150
    
                    )
    
    
            )
    
    
        [52. KW] => Array
    
            (
    
                [sonstige Fahrzeuge] => Array
    
                    (
    
                        [Schiffe] => 74
    
                        [Flugzeuge] => 10
    
                    )
    
    
                [Landfahrzeuge] => Array
    
                    (
    
                        [Motorräder] => 85
    
                        [Automobile] => 30
    
                    )
    
    
            )
    
    
        [1. KW] => Array
    
            (
    
                [Landfahrzeuge] => Array
    
                    (
    
                        [Motorräder] => 2
    
                        [Automobile] => 0
    
                    )
    
    
                [sonstige Fahrzeuge] => Array
    
                    (
    
                        [Schiffe] => 0
    
                        [Flugzeuge] => 6
    
                    )
    
    
            )
    
    
        [2. KW] => Array
    
            (
    
                [Landfahrzeuge] => Array
    
                    (
    
                        [Automobile] => 0
    
                        [Motorräder] => 5
    
                    )
    
    
                [sonstige Fahrzeuge] => Array
    
                    (
    
                        [Flugzeuge] => 125
    
                        [Schiffe] => 89
    
                    )
    
    
            )
    
    
        [3. KW] => Array
    
            (
    
                [sonstige Fahrzeuge] => Array
    
                    (
    
                        [Flugzeuge] => 15
    
                        [Schiffe] => 87
    
                    )
    
    
                [Landfahrzeuge] => Array
    
                    (
    
                        [Motorräder] => 54
    
                        [Automobile] => 12
    
                    )
    
    
            )
    
    
        [4. KW] => Array
    
            (
    
                [sonstige Fahrzeuge] => Array
    
                    (
    
                        [Flugzeuge] => 0
    
                        [Schiffe] => 13
    
                    )
    
    
                [Landfahrzeuge] => Array
    
                    (
    
                        [Motorräder] => 14
    
                        [Automobile] => 0
    
                    )
    
    
            )
    
    
    )
    
    

    Das hat gedauert, aber ich habe dieses Array und weiß nun nicht, wie ich damit zu gewünschten Ausgabe kommen soll. Derjenige, der mir diesen Lösungsansatz mit dem Array geraten hat meldet sich auch nicht mehr...

    War der Lösungsansatz überhaupt brauchbar? Ich seh den Wald vor lauter Bäumen nicht mehr, aber die Zeit drängt. :rolleyes:

    Gruß Tom

  2. Hallo zusammen,

    ich brauche irgendwie eine Lösungshilfe oder ein paar gute Tipps, wie ich folgendes Problem lösen kann.

    Es geht um die Erstellung eines Telefonleitfadens, wie sie in Callcentern benutzt werden.

    Ich habe die Erstellung eines Leitfadens bereits fertig, aber danach es soll dann geprüft werden, ob dieser Leitfaden tatsächlich bei jedem möglichen Weg zu einem Ende-Baustein kommt.

    So sieht es verkürzt aus:

    Beginn bei Start:

    START: Hallo mein Name ist X, dürfen wir Ihnen einige Fragen stellen?

    Ja -> weiter mit Q1

    Nein -> weiter mit Q2

    Q1: Gibt es bei Ihnen Schnupfen in der Belegschaft?

    Ja -> Q3

    Nein -> Q4

    Q2: Ok, tschüss!

    -> ENDE

    Q3: Wieviele haben etwa Schnupfen?

    Mehr als 10 -> Q5

    Mehr als 50 -> Q6

    Mehr als 100 -> Q7

    Q4: Herzlichen Glückwunsch, dann brauche ich auch nichts weiter wissen!

    -> ENDE

    usw...

    Ein Baustein kann also immer mehrere Optionen und Verzweigungen haben. Ist auch möglich dass man zu einem vorhandenen Baustein zurückspringt usw.

    Überprüft werden muss also ob der Leitfaden nach Fertigstellung valide ist und gerade bei komplexen Leitfäden nicht in einer Endlosschleife hängenbleiben kann. Ich seh den Wald vor lauter Bäumen nicht mehr und brauche irgendwie ein paar Pseudocodefetzen oder sowas damit ich einen Denkanstoß habe, derm ich endlich mal weiterbringt.

    Viele Grüße

    Tom

  3. Konnte das nicht so einfach auseinandernehmen, so dass du eine lokal lauffähige Version gehabt hättest. Dazu ist die ganze Sache zu komplex.

    Aber ich habe den Fehler gefunden, es lag auf dem <tr> in dem auch der Button liegt auch noch ein onclick-Event, welches dort völlig fehl am Platz war.

    Die dargestellten Code-Snippets ließen natürlich nicht so tief blicken.

    Aber erst durch diesen Thread habe ich mich so damit beschäftigt, dass ich es selbst finden konnte. :D

  4. Hi danke für die Antwort!

    Doch das Fenster wird in beiden Fällen über die gleiche Funktion geöffnet. Also 100%ig per window.open().

    
    /* JAVASCRIPT FUNKTION */
    
    function popup_center(url,name) {
    
    	var url;
    
    	newwindow = window.open(url,name,"width=800,height=600,left="+(screen.width/2-400)+",top=" +(screen.height/2-330)+",scrollbars=1,toolbar=0,resizable=0,menubar=0,modal=1");
    
    }
    
    
    
    //BUTTONCLICK, DER IN DER TOOLBAR IM TOPFRAME GENERIERT WIRD
    
    $tmp_array[] = toolbar::button_changeproperty('button_new','onclick','function() {popup_center(\'admin.php?_class=newkampagnen\',\'Neue Kampagne\');}');
    
    
    //BUTTONCLICK IM CONTENTFRAME
    
    <a href="#" onclick="popup_center(\'admin.php?_class=newkampagnen&_id='.$id.'\',\'Kampagne bearbeiten\');"><img src="_backend/_images/icon_change.gif" border="0" title="Kampagne ändern" alt="Kampagne ändern"></a>
    
    
    Wird im geöffneten Fenster auf speichern geklickt. Werden die Argumente an ein Dokument geschickt, welches im onLoad-Event folgende Funktion aufruft.
    
    function postdata_onLoad() {
    
    	opener.parent.content.window.location.reload();
    
    	window.close();
    
    }
    
    

    Wie gesagt in über die Toolbar funktioniert das Spektakel und im Content nicht.

  5. Hallo,

    ich hoffe hier kann mir jemand helfen.

    Ich habe folgendes Problem. Ich habe eine Seite mit mehreren Frames.

    In einem Frame habe ich eine Toolbar, in einem anderen den Content.

    Ich habe in der Toolbar einen Button mit dem ich meinen Daten einen neuen Datensatz hinzufügen kann.

    Es öffnet sich mit dem Befehl window.open ein Fenster, in dem ich die Daten eingebe und schließlich folgende Funktion aufrufe um das Fenster wieder zu schließen und die Daten im Content zu aktualisieren.

    opener.parent.content.window.location.reload();

    window.close();

    Das funktioniert auch soweit.

    Rufe ich allerdings das gleiche Fenster aus dem Content-Frame auf um einen Datensatz zu bearbeiten, bekomme ich beim Aufruf der o.g. Funkion die Fehlermeldung. "opener has no properties"

    :confused:

    Gruß Tom

  6. Stimmt... wäre sicher interessant um sich eine Meinung zu bilden. :)

    Also meine Aufgaben wären:

    Softwareentwicklung mit objektorientierten Sprachen.

    Administration von Microsoft Server Betriebssystemen und SQL-Datenbanken.

    Administration der hausinternen IT.

    Analyse der jetzigen Tools und Entwicklung von Lösungen zur Verbesserung / Erneuerung dieser Tools in Zusammenarbeit mit dem IT-Leiter.

    Über mich:

    Ich war zuvor ebenfalls in einer Firma der gleichen Branche. Allerdings überwiegend Entwicklung, weniger Administration. Habe jedoch Schulungen bei Microsoft für Server Betriebssysteme besuchen dürfen und bin ganz fit auf dem Gebiet.

    Kenntnisse: C/C++, C#, MS Visual FoxPro, MS SQL, MySQL, Prozessvisualisierungen in iFix und InTouch

    Kurzer Abriss, ich hoffe das reicht um eine realistische Vorstellung zu bilden.

  7. Hallo,

    wollte einfach mal mehrere Meinungen hören, was ich für eine Gehaltsvorstellung bei einer Bewerbung in einer anderen Firma angeben kann.

    Alter: 26

    Wohnort: eher ländlich, NRW

    letzter Ausbildungsabschluss: FIAE 02/2005

    Berufserfahrung: Fast 2 Jahre

    Vorbildung: Fachoberschulreife

    Arbeitsort: eher ländlich, NRW

    Grösse der Firma: ca. 50 Mitarbeiter

    Tarif: gibts nicht

    Branche der Firma: Steuerungstechnik, Automatisierungslösungen

    Noch keine Ahnung aber bisher war es immer so...

    Arbeitsstunden pro Woche: 40

    Anzahl der Monatsgehälter: 13

    Anzahl der Urlaubstage: 30

    Grüße Tom

  8. Puh wie lang ist das Kabel... 30cm vielleicht? Aber am Kabel liegt es nicht, ich habe ja bereits einen alten Brenner von mir das angeschlossen und da hat es funktioniert.

    Mittlerweile glaub ich schon fast der DVD Brenner ist Schrott, aber würde er dann noch als IDE Gerät angezeigt werden?

    Bin echt ratlos.

  9. Guten Morgen,

    ich habe gestern abend meinen neuen Rechner zusammengebaut.

    Mainboard Asus P5LD2

    P4 D 3 GHz

    Connect3D Radeon X1800XT (Retail, TV-Out, 2x DVI)

    Kingston HyperX DIMM 1 GB Kit

    DVD Brenner BenQ DW-1655

    Sobald ich den Brenner am IDE anschließe komme ich nicht einmal mehr ins BIOS. Er startet, Speichertest usw. IDE Scan - erkennt dann den Brenner, danach aber schwarzer Bildschirm und oben links blinkender Cursor.

    Ohne Brenner läuft alles soweit normal denk ich, nur ohne Betriebssystem bootet er auch nicht. :)

    Nach gegoogle hab ich nun die Vermutung, dass der Brenner zu neu für das Board ist und ich vielleicht erstmal ein BIOS Update machen muss. Kann das sein???

    Gruß Tom

  10. Hallo,

    wir haben den Provider gewechselt und sind von einem Windows auf einen Linux Server umgesiedelt. Wir haben eine Vielzahl von ASP Seiten, die nun auf dem Linux Server laufen sollen.

    Nach der Installation eines entsprechenden Moduls soll der Linux-Server kein Problem haben ASP Seiten zu interpretieren, aber die Datenbankanbindung macht mir Sorgen.

    Einige Seiten greifen per ODBC auf Access Datenbanken zu. Die Datenbanken habe ich bereits exportiert und in mySQL Datenbanken importiert, aber wie greife ich nun mit ASP darauf zu??? ODBC habe ich ja nun nicht mehr.

    Gibt es für ASP auch sowas wie ADOdb für PHP oder sowas?

    Vielleicht habt ihr ein paar Tipps, Stichpunkte oder Links, die mir bei meinem Problem weiterhefen. Aus Google kann ich irgendwie nicht genug herauskitzeln.

    Gruß Tom

  11. Hi Ahmet,

    nachdem ich gestern mit Sascha telefoniert habe, wusste ich erst, was es bedeutet unter 30% zu haben. Habe mich soeben noch bei unserer IHK-Ansprechpartnerin versichert und geh nun davon aus, dass wir uns im November wiedersehen.

    Eigentlich sind meine Ergebnisse soweit ok, aber bei der GH1 waren es 28%. Meine Freundin ist in Prag und jetzt sitz ich hier und überlege, wie ich meine Wohnung weiter mit Azubigehalt bezahlen soll...

    Es ist für mich unbegreiflich... Zeugnisdurchschnitt 1,8 ... alle anderen Prüfungsteile im grünen Bereich... mein Betrieb ist (vielleicht war) voll überzeugt von mir und hat mich mit 2+ bewertet, trotzdem muss ich bis November warten...

    Kein Ausdruck dafür, wie man sich jetzt fühlt... Denk an dich Ahmet!

    Gruß Thomas

  12. Ich bin ziemlicher Newbie was C++ angeht. Daher versuch ich mal hier ein Lösung für mein Problem zu finden.

    Ich möchte einfach mal über eine Konsolenanwendung eine Datenbankverbindung aufbauen und mit Datensätze ausgeben.

    Folgender Code bleibt beim assert-Befehl hinter dem SQLConnect hängen. Die Datenquelle Fahrzeuge.dsn ist vorhanden und kann aus der Verwaltung erfolgreich verbunden werden. Wenn euch Informationen fehlen, fragt einfach.

    Schnelle Hilfe wäre Spitze!!! :-)

    CODE:

    #include <windows.h> // wird von sql.h und sqlext.h benötigt

    #include <sql.h> // Haupt-Bibliothek für ODBC-Funktionen

    #include <sqlext.h> // Bibliothek zur Verwendung der SQL-Erweiterungen,

    // z.B. Konstanten

    #include <iostream.h>

    #include <assert.h>

    class DBanfrage {

    public:

    DBanfrage ( );

    // liest die Eingabe in die Attribute "fields" und "table" ein

    void uebernehmenEingabe ( );

    // baut DB-Anfrage in "sqlAnfrage" zusammen

    void aufbauenDbAnfrage ( );

    // baut Dabenbankverbindung auf;

    // setzt "sqlAnfrage" an Datenbank ab;

    // erzeugt Ausgabe;

    // baut Datenbankverbindung ab;

    void anfragenDatenbank ( );

    private:

    // zur Abspeicherung der Eingaben

    char table [256];

    char fields [256];

    // die Datenbankanfrage wird als Zeichenkette zusammengesetzt

    char sqlAnfrage [1024];

    // Das Ergebnis einer DB-Anfrage sind Datensätze mit jeweils höchstens

    // 10 Attributen (Spalten) je 128 Zeichen; reicht i.a. aus.

    char ergebnisDatensatz [10] [128];

    };

    // ENDE Klasse

    DBanfrage::DBanfrage( )

    {

    // In diesem Beispiel gibts nichts zu tun

    }

    void DBanfrage::uebernehmenEingabe ( )

    {

    // Übernahme der Eingaben

    strcpy ( table , "fahrzeuge" );

    strcpy ( fields , "*" );

    }

    void DBanfrage::aufbauenDbAnfrage ( )

    {

    strcpy(sqlAnfrage,"") ; // Vorbelegung

    strcat(sqlAnfrage, "SELECT ") ;

    strcat(sqlAnfrage, fields ) ;

    strcat(sqlAnfrage, " FROM ") ;

    strcat(sqlAnfrage, table ) ;

    }

    void DBanfrage::anfragenDatenbank ( )

    {

    HENV hEnv; // Festlegung von 'handles' -> siehe sqltypes.h

    HDBC hDBC; // -> sqltypes.h wird über sql.h eingebunden (include)

    HSTMT hStmt;

    RETCODE retCode; // Returncode (Typ: signed short, siehe sqltypes.h)

    SQLINTEGER len; // Variable zur Aufnahme von "Längen". Wird z.Z.

    // nicht ausgewertet. (Typ long, siehe sqltypes.h)

    short numResultCols = 0; // Anzahl der Spalten im Ergebnis der DB-Anfrage

    // Im nachfolgendem Code wird mittels API-Aufrufen auf Basis von ODBC

    // auf eine Datenbank zugegriffen. Die verwendeten Konstanten,

    // wie z.B. SQL_HANDLE_ENV, entstammen der Bibliothek sql.h.

    //

    // Die Datenbank muss im ODBC-Datenquellen-Administrator (s. NT System-

    // steuerung) mit einem Zugriffsnamen eingetragen werden.

    //-- Zuweisen des 'environment handle'

    retCode = SQLAllocHandle ( SQL_HANDLE_ENV,

    SQL_NULL_HANDLE,

    &hEnv

    );

    assert ( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO );

    //-- Setzen des "ODBC version environment"-Attributs

    retCode = SQLSetEnvAttr ( hEnv,

    SQL_ATTR_ODBC_VERSION,

    (SQLPOINTER) SQL_OV_ODBC3,

    SQL_IS_INTEGER

    );

    assert ( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO );

    //-- Zuweisen des 'connection handle'

    retCode = SQLAllocHandle ( SQL_HANDLE_DBC,

    hEnv,

    &hDBC

    );

    assert ( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO );

    // Verbindung zur Datenquelle wird hergestellt;

    retCode = SQLConnect( hDBC,

    (SQLTCHAR *) "Fahrzeuge", // Name der Datenquelle

    SQL_NTS,

    (SQLTCHAR *) "", // keine Benutzerkennung

    SQL_NTS,

    (SQLTCHAR *) "", // kein Passwort

    SQL_NTS

    );

    assert ( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO );

    //-- Zuweisen des 'statement handle'

    retCode = SQLAllocHandle ( SQL_HANDLE_STMT,

    hDBC,

    &hStmt

    );

    assert ( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO );

    // Absetzen des SQL-Befehls

    retCode = SQLExecDirect ( hStmt,

    (unsigned char *) sqlAnfrage,

    SQL_NTS

    );

    assert ( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO );

    // Anzahl Tabellenspalten berechnen

    SQLNumResultCols ( hStmt , &numResultCols );

    // Tabellenspalten auswählen

    for ( int i=0 ; i < numResultCols ; i++ )

    {

    SQLBindCol (hStmt, i+1, SQL_C_CHAR, ergebnisDatensatz, 128, &len);

    }

    cout << "Ergebnis der Anfrage: " << sqlAnfrage << "" << endl;

    retCode = SQLFetch ( hStmt );

    while ( retCode == SQL_SUCCESS || retCode == SQL_SUCCESS_WITH_INFO)

    {

    for ( int i=0 ; i < numResultCols ; i++ )

    {

    cout << ergebnisDatensatz << " ";

    }

    cout << "<br>" << endl ;

    retCode = SQLFetch ( hStmt );

    }

    //-- statement handle freigeben

    SQLFreeHandle(SQL_HANDLE_STMT, hStmt);

    //-- Verbindung zur Datenquelle auflösen

    SQLDisconnect(hDBC);

    //-- connection handle freigeben

    SQLFreeHandle(SQL_HANDLE_DBC, hDBC);

    //-- environment handle freigeben

    SQLFreeHandle(SQL_HANDLE_ENV, hEnv);

    }

  13. Hi Kollegen,

    nutze seit kurzem WinXP und bekomme diese Fehlermeldung bei einigen wenigen Websites, wie kann ich das beheben? Unter W2k liefen diese Seiten einwandfrei.

    Error 403: Forbidden!

    Verboten!

    Es sind nur ungenügende Zugriffsrechte gesetzt. Bitte ändern Sie die Rechte mit Ihrem FTP-Programm.

    :confused:

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...