Heart-Profit ERP
November 27, 2024, 08:45:39 am *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Login Register  
Pages: [1]
  Print  
Author Topic: Formattering Emailbericht Funktietrigger uitbreiden met definitie HTML bericht  (Read 3630 times)
0 Members and 0 Guests are viewing this topic.
Heart Informatisering B.V.
Partner
******
Offline Offline

Posts: 27476


View Profile WWW
« on: June 11, 2009, 12:55:11 pm »

Aanvulling op Releasenote  http://ha1.heartprofit.nl/profit/index.php?topic=21657.0

In bovengenoemd topic staat beschreven hoe het onderwerp van het emailbericht kan worden geformatteerd, door zelf aan te geven welke velden daarin moeten worden opgenomen. In het voorbeeld wordt tevens uitgelegd dat er een mogelijkheid bestaat om de inhoud van een Kontaktverslag mee te sturen in de tekst van het emailbericht (dit voor die toepassingen waarbij het meesturen van tekst wordt ondersteund, zijnde moment alleen in de funkties PKKOTV2 en PKKOWY2).

Nu met bovenstaande een basis gelegd is, zijn we het nog mooier gaan maken. In de nieuwe situatie zijn er 2 Tabbladen bijgekomen.

Laten we eerst eens beginnen met een voorbeeld uit de oude situatie. Stel dat we een Funktie Trigger zouden maken voor het wijzigen van een Artikelgroep, en dat we daarbij de volgende velden zouden selekteren:



Het emailbericht wat hieruit zou volgen, ziet er dan uit als:



en meer informatie krijgen we feitelijk niet. Omdat er aan een Artikelgroep geen tekstmechanisme hangt (en zo dat wel het geval was geweest, hadden er er nog niets aan daar dit momenteel enkel in de situaties PKKOTV2 en PKKOWY2 wordt ondersteund), wordt er geen tekst meegezonden, en zou het bericht <leeg> zijn. Of beter, de tekst van het emailbericht zou altijd leeg zijn, behoudens die twee uitzonderingssituaties.

In de nieuwe situatie zal het bericht worden gevuld met tabel, waarin zowel de geselekteerde velden alsmede de waarde van dat veld wordt weergegeven.



Middels een StyleSheet kunnen we vervolgens zelf bepalen hoe deze tabel eruit moet komen te zien, bijvoorbeeld:



In een StyleSheet worden definities vastgelegd van hoe bepaalde stukken tekst eruit moeten komen te zien. Ieder separaat te formatteren stukje tekst krijgt een eigen Identifikatie toegekend, van de StyleSheet beschrijft in welk lettertype, lettergrootte, kleur etc. tekst van die identifikatie moet worden weergegeven.

Er is derhalve een 4e Tabblad opgenomen, met daarop een DHTML Editor. Middels deze DHTML control kunt U in principe helemaal zelf bepalen hoe het te verzenden emailbericht eruit moet komen te zien, desnoods aangevuld met bedrijfslogo's etc. Via Tabblad "Bron" zou de geoefende gebruiker precies kunnen inrichten wat ze wil.



Om het U als gebruiker makkelijk te maken, hoeft U geen gebruik te maken van die DHTML control. Op het eerste Tabblad wordt op eenvoudige wijze gevraagd naar de te gebruiken StyleSheet, en de identifikaties van de aan te sturen tabel en kolommen.

De StyleSheet die ervoor zorgt dat de tabel in het blauw gepresenteerd wordt hebben wij alvast op onze website staan (http://www.heartprofit.com/www/css/functiontrigger001.css), en wordt standaard als defaultwaarde getoond.

De identifikaties, of beter: Classnamen, van de tekstblokken zoals deze in deze StyleSheet zijn gedefinieerd zijn:

- tb_table v.w.b. de definitie van de tabel zelf

- colfield v.w.b. de kolom met de omschrijving v/d veldnaam

- colvalue v.w.b. de waarde van het betreffende veld



Op bovenstaand scherm is het mogelijk om te verwijzen naar een andere StyleSheet. Het is ook mogelijk om de identifikaties van de aangestuurde classes te wijzigen.

 Let op: De aangestuurde classnamen dienen wel in de StyleSheet gedefinieerd te worden. Gebeurt dat niet, dan zal (dat deel van) de tabel alsnog ongeformatteerd worden verzonden. Wijzigen van een Classnaam impliceert dus per definitie dat U zelf een nieuwe StyleSheet dient te maken. Als U echter eenmaal de moeite neemt dit te doen, kunt U bijvoorbeeld denken om i.g.v. een Artikelgroep een tabel "Tabel_AG" aan te sturen, en om i.g.v. een Artikel een tabel "Tabel_AR" aan te sturen. Op die manier kunnen de tabellen met Artikelgegevens op een andere manier geformatteerd worden dan de gegevens uit een Artikelgroep.



Onder rubriek StyleSheet treft U ook een Option-Group aan. Dit betreft een serie van 3 Radiobuttons, waarbij slechts één van de drie options geselekteerd kan worden.

Mogelijke opties:

 Interne StyleSheet Als deze optie gekozen wordt, zal de inhoud van de opgegeven StyleSheet worden gekopieerd in het te verzenden DHTML bericht (zie ook Tabblad #4). Omdat de Style in het verslag gekopieerd wordt, zal het op een later moment wijzigen van de inhoud van die StyleSheet niet van invloed meer zijn op de huidige Funktie Trigger (danwel reeds verzonden emailberichten). Ook kan de ontvanger van het bericht het bericht bekijken zoals het bedoeld was, zonder daarvoor een verbinding te hoeven hebben met het internet.

De StyleSheet mag zowel een internetpagina bevatten (http://) alsmede verwijzen naar een file op disk.

 Externe StyleSheet Als deze optie gekozen wordt, zal er in het emailbericht een link worden opgenomen die verwijst naar deze Stylesheet. De inhoud van de StyleSheet zelf wordt niet opgenomen in het document. Als de inhoud op de lokatie waarnaar verwezen wordt wijzigt, wijzigt ook de inhoud van ieder volgend emailbericht (en reeds verzonden emailberichten) mee.

Bij deze optie mag er alleen naar een http:// pagina op het internet worden verwezen.

 Let op: Het is ons opgevallen dat als e.d. emailbericht wordt ontvangen welke naar een externe StyleSheet verwijst, deze op het ene werkstation wél geformatteerd wordt conform de style, en op een ander werkstation niet. Het frappante is ook dat als het bericht op het werkstation waarop de tabel niet geformatteerd wordt doorgestuurd, het doorstuur-scherm van Outlook-Express ineens wél de formattering toepast, maar vervolgens bij aankomst van het bericht deze weer niet toont.

W.s. is dit ergens een instelling in Outlook Express; wij hebben hem niet kunnen vinden. Met een Interne StyleSheet treedt dit probleem niet op.

Zodra op de button "Toepassen" wordt geclickt, zal de StyleSheet keuze worden verwerkt in het DHTML bericht op het 4e Tabblad. Een eventueel oude verwijzing naar een StyleSheet zal dan worden verwijderd, en worden vervangen door de nieuwe keuze.

Om te voorkomen dat een gebruiker (die wat meer van HTML afweet en zelf via de DHTML editor (Tab Bron) een eigen definitie heeft gemaakt) ineens zijn instellingen kwijt is, is er een 3e optie opgenomen:

 Handmatig Instellen via DHTML editor Bij deze keuze zal de Toepas-button het DHTML verslag niet wijzigen; de gebruiker geeft hiermee aan dat hij e.e.a. zelf regelt in de DHTML editor.

Hoewel het niet verplicht is om het DHTML bericht op het 4e Tabblad te wijzigen, kunnen we daar wel (zie eerder voorbeeld) onze eigen tekst invullen, danwel een logo opnemen.

Het emailbericht komt er vervolgens uit te zien als:



De twee Tabbladen uit het oude voorbeeld zijn nu Tabblad 2 en 3 geworden. Ook deze zijn gewijzigd. Zo mogen we bij het selekteren van de velden alle velden opnemen die we willen terugzien in ons emailbericht:



en kan op het 3e Tabblad worden aangegeven of we een veld in de header (het onderwerp) willen terugzien of niet. Ieder veld zal altijd in de tabel worden opgenomen; of ze in het onderwerp van het bericht moet voorkomen is instelbaar.



Een veld welke voorkomt in de sleutel van de betreffende Funktionele Alias, zal default worden weergegeven in het onderwerp. Overige velden (attributen) worden default niet weergegeven in het onderwerp. Uiteraard betreft dit slechts een default instelling, en kunt U dit wijzigen.

Scheidingstekens zijn alleen van toepassing voor die velden die in het onderwerp moeten worden weergegeven.

Het emailbericht ziet er vervolgens uit als:



Zoals 2 schermen terug zichtbaar is, is het ook mogelijk om per regel de Classnaam van de kolommen "Veld" en "Waarde" aan te geven. Pas als hier een waarde wordt ingevuld, zal die waarde gebruikt worden.

Om duidelijk te maken wat we hiermee kunnen doen, heb ik in de default StyleSheet twee classnamen aangemaakt: "colred" en "colgreen". De een stuurt rode tekst aan, de ander groene.

In onderstaand scherm pas ik die twee Classnamen toe bij het veld "Groeps-Artikelgroep":



Het emailbericht ziet er dan uit als:



Deze funktionaliteit kunt U gebruiken om bijvoorbeeld die velden die extra in de gaten gehouden moeten worden (omdat ze nog al eens door gebruikers niet of onjuist worden ingevuld) in een andere kleur of lettertype weer te geven. Ook zou hiermee geregeld kunnen worden dat bijv. een veld Artikelnummer er altijd op dezelfde manier uitziet, door bij een veld "LOAR_AID" altijd te verwijzen naar een Class "Artikel".

FunktieOmschrijvingDtm.Vl.WyzDtm.L.Wyz
APWP        Omschrijving (nog) niet bekend    30-07-2007    04-06-2009
PWBHOI      Omschrijving (nog) niet bekend    26-05-2009    04-06-2009
PWFTFSMV    Omschrijving (nog) niet bekend    25-05-2009    04-06-2009
PWFTUVME    Omschrijving (nog) niet bekend    02-06-2009    04-06-2009
SYEMSM      Omschrijving (nog) niet bekend    01-02-2007    10-06-2009
SYMTICKP    Omschrijving (nog) niet bekend      -  -        09-06-2009
SYOF1       Omschrijving (nog) niet bekend    28-05-2009    04-06-2009
SYSS        Omschrijving (nog) niet bekend    04-06-2009    11-06-2009
Logged
Wouter Rijnbende
Administrator
Partner
*****
Offline Offline

Posts: 5367


View Profile WWW
« Reply #1 on: June 12, 2009, 07:26:54 am »

Bovenstaande aanpassing maakt gebruik van een nieuwe Active-X control (MSINET.OCX).
Zie verder http://ha1.heartprofit.nl/profit/index.php?topic=21686.0
Logged

Heart-Profit company ID : HA
Peter Stordiau
Administrator
Partner
*****
Offline Offline

Posts: 4076


Just testing


View Profile WWW
« Reply #2 on: June 12, 2009, 09:54:42 am »

Even aanvullend :

Wij denken dat er niet veel mensen zullen zijn die zeggen "joepie, dàt ga ik even inrichten !", domweg omdat de uitleg min of meer als basis heeft dat je "programmeur" moet zijn. Ik wil echter benadrukken dat dit veel meer zo lijkt dan dat het zo is;

Je zal zien dat alles eigenlijk vanzelf gaat, mits je dit topic (en de eerdere hierover) erbij houdt als leidraad. Termen zoals "Style Sheet" (CSS) moet je niet van schrikken, en is er juist voor bedoeld om alles vanzelf te laten werken, en wat ook gebeurt als de defaults gehandhaafd blijven. Vervolgens is het wel zo dat voor een ieder die bereid is om wat te expirimenteren, dit ook best makkelijk kan;
Tegen die tijd moet er niet geschroomd worden om te vragen "en hoe pas ik nu iets aan aan die Style Sheet van jullie", wat op niet veel meer neerkomt als het ding ergens anders neerzetten, maar wat op zich konsekwenties mag hebben voor een "algemeen goede werking" die ook reikt tot aan het verzenden van dit soort emails naar buiten de eigen organisatie.

Samengevat : tegen de tijd dat je niet meer onze default Style Sheet wenst te gebruiken, omdat je erin wilt aanpassen, staan wij klaar om te helpen (wel via het forum graag, dan heeft de rest er ook iets aan).
Logged

Heart-Profit company ID : HA
moderator all boards
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1 RC2 | SMF © 2001-2005, Lewis Media Valid XHTML 1.0! Valid CSS!
Page created in 0.049 seconds with 20 queries.