[gelöst] Tabellenergänzung über einen report (CC)

16. Juni 2012 12:07

Hallo am Samstag, :lol:

ich bin zwar nicht mehr neu, aber offenbar zu selten mit unserem System beschäftigt :oops: (ist ja eigentlich gut so).
Dennoch hat sich jetzt eine Aufgabe aufgetan, ich weiß auch wie ich es lösen möchte, aber es fehlt mir die Erfahrung mit den tools:

Folgendes:
In der Tabelle 5056 Contact Mailing Group kann einem Kontakt in einer Zeile ein 'Mailing Group Code' zugeordnet werden. Wir haben uns nun dazu entschlossen jedem Contact mindestens 2 Mailing Group Codes zuzuordnen (aus ganz bestimmten Gründen). Das ist natürlich auch kein Problem, grundsätzlich.

Problem: Von unseren 10.000 Kontakten haben 3.000 Kontakte den Mailing Group Code 'X' und sollen zusätzlich noch den Mailing Group Code 'Y' erhalten, falls Sie den nicht schon haben. Mehrere andere gleichzeitige Mailing Groupe Codes beim selben Kontakt sind aber auch noch möglich (M oder R oder Z oder...).

Ich würde das eigentlich in einem report lösen, der sich die erste Zeile hernimmt, schaut ob das ein Kontakt ist mit dem Mailing Group Code 'X', falls nein würde der report zu nächsten Zeile wechseln, falls ja würde er folgendes machen:
Gehe alle Zeilen durch (und zwar von vorne nochmal neu) und suche ob es denselben Kontakt noch mit dem Mailing Group Code 'Y'' gibt, falls ja gehe zum nächsten Kontakt (also dem nächsten von der oberen Schleife), falls nein lege in der Tabelle so einen Kontakt an mit dem Mailing Group Code 'Y', mache einen refresh (also ziehe die Felder Contact Name, Contact Company Name und Mailing Group Descrition "hoch") und gehe zur nächsten Zeile der äußeren Schleife.
Wenn dann in der äußeren Schleife die erste leer Zeile gefunden wird (die Tabelle also fertig ist), dann ist alles fertig.

Ich weiß, es ist nicht so schwierig, mein betreuendes Softwarehaus hätte das in 30 Minuten implementiert - nur verstehen :idea: würde ich es dann wieder nicht, das will ich aber.

Vielleicht findet sich ja einer, der bereit ist das mit mir klein klein :-P durchzukauen. Danke.

Gruß & schönes Wochenende
Stefan Ganzmann
Zuletzt geändert von SGanzmann am 18. Juni 2012 12:38, insgesamt 1-mal geändert.

Re: Tabellenergänzung über einen report (CC)

16. Juni 2012 12:54

Zu kompliziert. Du gehst einmal über alle Zeilen mit dem Code X, schaust in einer zweiten Record-Variable, ob für diesen Kontakt schon eine Zeile Y existiert und fügst diese ein, falls nicht.

Oder kürzer: du legst in der Recordvariable für alle X den Datensatz mit Y an, und machst ein "if insert then;". So wird er eingefügt, falls er noch nicht da ist, und eben nicht, wenn doch. Das "if" vor dem Insert sorgt nur dafür, dass der Report nicht mit einer Fehlermeldung abbricht.

Re: Tabellenergänzung über einen report (CC)

16. Juni 2012 22:24

Danke McClane für die Algorithmus-Verbesserung -aber es fehl mir eher am ausführenden Code.
Ich werde mich aber einfach mal versuchen an der Geschichte... :roll:

Re: Tabellenergänzung über einen report (CC)

16. Juni 2012 23:18

Ist wirklich eine kurze Angelegenheit.

Du hast zum Üben eine lokale Kopie eurer DB, oder?

Re: Tabellenergänzung über einen report (CC)

16. Juni 2012 23:23

ja ich übe auf einer Testdatenbank - habe heute aber einen Tennistag gehabt und bin jetzt platt, morgen...

Re: Tabellenergänzung über einen report (CC)

18. Juni 2012 10:16

Falls die Performance nicht stimmt, dann sollte IF NOT GET besser sein als IF INSERT.

Re: Tabellenergänzung über einen report (CC)

18. Juni 2012 12:38

gelöst, :lol: es geht am einfachsten in dem man im Marketing-Modul ein entsprechendes Segment anlegt (das mit dem Verteiler X) und dann über Funktionen "Verteiler zuweisen" den entsprechenden Verteiler zuweist.
Hätte ich genügend Shulung gehabt - oder wäre mein Hirn nicht so durchsiebt - dann hätte ich das eh parat gehabt, so hat mir mein freundlicher NAV-Partner aus der Patsche geholfen, war dann natürloch in 2 Minuten erledigt...

Die Sache mit dem Report-verstehen habe ich damit nochmal verschoben ;-)