Blog

Ik ben inmiddels al ruim 13 jaar bezig met EDI. Dat is best lang. Zo lang dat ik bij veel collega's zelfs bekend sta als "Mister EDI". En het is ook alweer zo'n 9 jaar geleden dat ik voor het eerst te maken kreeg met het vakgebied van Integration en Middleware. In mijn geval betreft dat voornamelijk het werken met webMethods. In al die jaren is mij een aantal zaken opgevallen. Als ik in mijn werk betrokken ben als EDI Architect dan komt heel vaak het volgende voorbij: EDI? Is dat niet een beetje ouderwets? Die EDI-berichten bestaan al zo'n 20 jaar en zijn nog steeds hetzelfde. Moete

Voor het hard vastzetten van een executieplan zijn er in Oracle verschillende methoden beschikbaar. De meest toekomstvaste en stabiele voor 11g is nu het custom SQL profile. Dit is een variant van het door de tuning advisor aangemaakte SQL profile. Waar de tuning advisor een set hints met relatieve aanpassingen op statistieken oplevert geeft het custom profile een set directieven die een specifiek plan afdwingen. Dit is vergelijkbaar met een outline. Oracle support levert hiervoor het script coe_xfr_sql_profile.sql (DOC ID 1487302.1), welke opgenomen is in de SQLT tool (DOC ID 215187.1).

Bij mijn huidige opdrachtgever hebben we een prachtig systeem vanaf scratch mogen opbouwen. Inmiddels zijn we in een stadium aanbeland dat we niet meer in een projectgroep werken maar volledig in productie. Dit verandert ook de werkwijze op veel vlakken. Één daarvan is de manier hoe we moeten omgaan met bug fixing terwijl er op hetzelfde moment ook gewerkt wordt aan een nieuwe release. Gelukkig heeft APEX hiervoor de Build Option. Met deze optie kan je diversen applicatie onderdelen in- of excluden. Hoe je de Build Option nu moet gebruiken, zal ik hieronder stap voor stap uitleggen. &n

Waarom zou je de pagination willen resetten? Als je met APEX werkt zul je al snel een keer de volgende melding zien: Als je in het voorbeeld in figuur 1 een nieuwe regel in de master selecteert, waarbij er minder dan 3 pagina's detail gegevens zijn, dan zal je bij het detail rapport de eerder genoemde melding krijgen. Figuur 1 ----------                          ---------- | master |                          | detail | -------------------------------     ------------------------------- | .........                   |     | .........  

Onlangs liep ik tegen een vervelend probleem aan: een in de ontwikkel- en testomgeving prima draaiend batchprogramma gaf in de acceptatieomgeving opeens allerlei foutmeldingen. Wat was er aan de hand? Een aanzienlijke stored procedure (package) in een Oracle 11g database had tot doel data van een tweetal databases te converteren naar een derde. Dit gebeurde in een grote loop, met allerlei cursoren waarbij in 75% van de gevallen met databaselinks werd gewerkt. Na elke doorloop van de buitenste loop werd een commit uitgevoerd. Hier ging het mis: na de commit trad een foutmelding op: ORA-0205

Oracle SQL biedt standaard functionaliteit voor het berekenen van het aantal dagen of het aantal maanden tussen twee datums. Bijvoorbeeld: SQL> select to_date('16112013','ddmmyyyy') - to_date('06052013','ddmmyyyy') "days" from dual; days ---------- 194 SQL> select months_between(to_date('16112013','ddmmyyyy'), to_date('16052013','ddmmyyyy')) "months" from dual; months ---------- 6 Ook het optellen van dagen of maanden bij een datum is eenvoudig met SQL te doen. SQL> select to_date('06052013','ddmmyyyy') + 23 "date" from dual; date ---------- 29-05-2013 SQ

Het is de eerste vraag die ik hoor na het oplossen van een Oracle optimizer performance issue met grote impact. De vraag is eigenlijk: hoe groot is het risico dat dit nog een keer gebeurt? Het antwoord op de originele vraag is altijd: jazeker, op de tweede meestal: het risico is zeker aanwezig. In het vervolg van het gesprek wordt de database software en zijn maker vaak aangewezen als onbetrouwbaar. Dit is het gevolg van de onbekendheid met de database en hoe hij probeert de systemen op zijn best tot dienst te zijn. Dat is altijd een balans tussen de effort voor het bepalen wat de beste

Om van een bepaald jaar de erkende feestdagen van Nederland te bepalen gebruik ik al jaren hetzelfde stukje PL/SQL-code. De aankomende troonswisseling, en daarmee het wijzigen van de nationale feestdag Koninginnedag naar Koningsdag, was voor mij de aanleiding om de bewuste code eens te reviseren. Nederland kent de volgende elf erkende feestdagen: Nieuwjaarsdag Goede vrijdag 1e en 2e Paasdag Koninginnedag/Koningsdag Hemelvaartsdag Bevrijdingsdag 1e en 2e Pinksterdag 1e en 2e Kerstdag De 'blauwe' feestdagen vallen ieder jaar op dezelfde datum, de 'groene' feestdag

Bij het analyseren van een ongunstige plankeuze door de Oracle optimizer liep ik laatst tegen een situatie aan waar er een cardinaliteit van één in het plan stond waar er tienduizenden verwacht waren. De index statistieken waren redelijk in lijn met het verwachte aantal rijen, waarom dan toch de misser in het plan?   Het euvel bleek in een histogram te huizen. De statistieken werden in de nacht berekend en er kwamen op de dag nieuwe records in de tabel die met de betreffende query weer opgehaald werden voor verwerking aan de hand van een jobid. Het (frequency) histogram bevatte

Pas geleden zag ik een vraag op het APEX Forum over het refreshen van een pagina met een calendar regio. Het probleem is dat er een LOV-popup item op de pagina staat waarvan de query in de calendar regio gebruikt maakt. Als deze LOV-popup wijzigt moet de calendar regio refreshen met de nieuwe waarde van de LOV-popup. Simpel toch? Ja, dat dacht ik ook maar degene die de vraag stelde zei al van alles geprobeerd te hebben inclusief dynamic actions etc. Nu was ze zover dat haar vraag kwam of ze de pagina kon herladen met javacode zoiets als redirect(this.URL). Iemand gaf haar netjes het antwo

Back-To-Top