SlideShare a Scribd company logo
1 of 25
Ruby to the Rescue!
Agenda
● About me
● What is this not about
● Ruby to the Rescue!
About me
● Senad Uka – (twitter: @senaduka)
● A-net d.o.o., Compusight d.o.o.
● Today: Six Sigma Software d.o.o.
About me
● On the side:
– M0 – http://www.mhalka.com
– FlapsApps – http://www.flapsapps.com
● Ruby and I:
– End of 2005. (Rails 1.0 release!)
What is this not about?
● Ruby “rescue” statement
● Rails
– It's not cool anymore ;)
● A beautiful summer day
● Vacation
The Project
● Logistics industry
● 1 month to the first phase production
● Web Application + Integration software
● Canceled vacation plans !
Web Application
● ASP.NET Web Forms
● MS SQL SERVER
● Windows Server
UN/EDIFACT Integration
● 4 kinds of messages
● 2 way communication (over FTP server
running on IBM System/360?!)
● Cca. 500 printed pages of computer
unreadable specification
● Cca. 5% chance of errors (syntax &
semantics)
EDIFACT SAMPLE
● UNA:+.? '
● UNB+UNOC:3+4023083000008+1929+110906:1458+346'
● UNH+M110906145822A+IFCSUM:S:93A:UN'
● BGM+787+172'
● FTX+SPH++T'
● CNT+10:4:PCE'
● CNT+7:330:KGM'
● CNT+11:10:PCE'
● RFF+FF:0100000545196900172'
● DTM+171:20110906:102'
● TDT+20++3+31:BARCELONE++++:::BARCELONE:F'
● DTM+186:201109061048:203'
● NAD+CS+54665033400396'
● DOC+787+172'
● DTM+137:20110906:102'
● NAD+DC+1902'
● NAD+F03+1902'
● EQD+SW+339YE85'
● CNI+1+4230783213'
●
DTM+137:20110905:102'
●
TSR+++7'
●
UNA:+.? '
UNB+UNOC:3+4023083000008+INTERSPEDS+130531:2353+1389'
UNH+M130531235340A+IFCSUM:S:93A:UN'
BGM+787+425'
CNT+10:11:PCE'
CNT+7:3164:KGM'
CNT+11:87:PCE'
RFF+FF:0100000300171300425'
DTM+171:20130531:102'
TDT+20++3+31++++:::SARAJEVO 01?:15:SRB'
DTM+186:201305312353:203'
NAD+CS+04900000300'
DOC+787+425'
DTM+137:20130531:102'
NAD+DC+INTERSA01'
CNI+1+4028417482'
DTM+137:20130528:102'
TSR+++3'
MOA+116:3581.75:EUR'
FTX+ACB+++EXPORT NOTIFICATION?: 13PL445010E0083932 '
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
FTX+ACB+++NIE PI TROWA'
FTX+ACB+++OS. KONT. SELMIR SABITOV, 0038735279196'
FTX+ACB+++WYCENA WDL. OFERTY?:3244444 ; 120,57 EUR'
TOD+5++DD1'
RFF+FF:04028417482'
RFF+CR:FSE-44/13/FSE'
GOR+1+5'
DOC+830+13PL445010E0083932 '
DTM+137:201305271538:203'
NAD+CZ+00146561++BIUROMAX SP. Z O.O.+UL. SOLEC 156 A+BANIOCHA++05-532+PL'
NAD+CN+00001007++GIZMO D.O.O. ZA PROMET I USLUG+STUPINE B6 / LAMELA 7+TUZLA++75000+BA'
GID+1+1:EP'
FTX+AAA+++TUSZE,TONERY,CZCI'
MEA+WT+AAE+KGM:240'
MEA+VOL++MTQ:1.008'
DIM+1+M:1.2:0.8:1.05'
PCI+24+00340258760563375862'
PCI+28+FSE-44/13/FSE'
CNI+2+1114738181'
DTM+137:20130530:102'
TSR+++3+HAZ'
MOA+116:286.5:EUR'
FTX+ACB+++COMERCIAL INVOICE?: 202009647'
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
FTX+DIN+++WARE IST NICHT STAPELBAR!!!'
TOD+5++DD1'
RFF+FF:01114738181'
RFF+CR:330454'
GOR+1+5'
DOC+380+202009647'
DTM+137:201305141953:203'
NAD+CZ+11032163++CTA GMBH+INDUSTRIESTR. 2+BIETIGHEIM-BISSINGEN++74321+DE'
NAD+CN+00001004++DIT TUZLA BO:BLAZENKA MARKOVIC+V. IVANOVICA 31+TUZLA++75000+BA'
GID+1+1:PE'
FTX+AAA+++NALCO VARIDOS LASERC'
MEA+WT+AAE+KGM:17'
MEA+VOL++MTQ:0.113'
PCI+24+00340228090132716635'
PCI+28+380/ 202009647'
DGS+ADR'
FTX+ADW+++LQ'
MEA+WT+AAE+KGM:11'
CNI+3+4028494560'
DTM+137:20130529:102'
TSR+++3+HAZ'
MOA+116:10711.56:EUR'
FTX+ACB+++EXPORT NOTIFICATION?: 13DE810377614381E0 '
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
TOD+5++DD1'
RFF+FF:04028494560'
RFF+CR:1729256'
GOR+1+5'
DOC+830+13DE810377614381E0 '
DTM+137:201305281406:203'
NAD+CZ+18019513++DREVE OTOPLASTIK GMBH+MAX-PLANCK-STR. 31+UNNA++59423+DE'
NAD+CN+00001025++WIDEX SLUSNI APARATI D.O.O.:MR RASIM GRANULO+GRADACACKA 29 A+SARAJEVO++71000+BA'
GID+1+1:PE'
FTX+AAA+++ROHR,SCHLAUCH,LACK.'
MEA+WT+AAE+KGM:196'
MEA+VOL++MTQ:0.686'
DIM+1+M:0.6:0.8:1.43'
PCI+24+00340258760564496900'
PCI+28+1729256'
DGS+ADR'
FTX+ADW+++LQ'
MEA+WT+AAE+KGM:1'
CNI+4+4028495569'
DTM+63:201306040000:203'
DTM+137:20130530:102'
TSR+++3+HAZ'
MOA+116:2690:EUR'
FTX+ACB+++EXPORT NOTIFICATION?: 13DE505277624224E7 '
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
FTX+DEL+++20 SACK SIND AUF EINER PALETTE'
FTX+DIN+++DELIVERY DATE?: DUE TO 04.06.2013'
TOD+5++DD1'
RFF+FF:04028495569'
RFF+CR:80023343'
RFF+DQ:80023343'
GOR+1+5'
DOC+830+13DE505277624224E7 '
DTM+137:20130529851:203'
NAD+CZ+06003869++HEUBACH GMBH+HEUBACHSTR. 7+LANGELSHEIM++38685+DE'
NAD+CN+00001014++NUTAL D.O.O.+POCULICA+VITEZ++72250+BA'
GID+1+20:SA'
FTX+AAA+++HEUCOTRON YELLOW'
MEA+WT+AAE+KGM:506'
MEA+LMT++M:0.5'
PCI+24+00340258760564518275'
PCI+28+80023343'
DGS+ADR+6.1:T5+2291++III'
FTX+F02+++SA::20'
FTX+AAD+++BLEIVERBINDUNG, LOESLICH, N.A.G.'
FTX+AAE+++BLEICHROMAT'
FTX+BAM+++1218'
FTX+DAC+++1182'
FTX+RAH+++E'
FTX+HAZ++15:ZZZ'
MEA+WT+AAE+KGM:500'
CNI+5+33000486806'
DTM+137:20130530:102'
TSR+++3'
MOA+116:4921.77:EUR'
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
TOD+5++DD1'
RFF+FF:33000486806'
GOR+1+5'
NAD+CZ+33300427++HYDROCHEM S.R.O.:IAO?: 35861843+¯OLTESOVEJ 20+BRATISLAVA 1++82108+SK'
NAD+CN+00001008++HIDROINœENJERING PJ BR??KO+UL. BRA??E ??USKI??A 17+BRAKO 1++76101+BA'
GID+1+1:BI'
FTX+AAA+++ELEKTROMOTOR'
MEA+WT+AAE+KGM:300'
PCI+24+00340465760004742473'
CNI+6+4028460883'
DTM+137:20130529:102'
TSR+++3+HAZ'
MOA+116:3219.52:EUR'
FTX+ACB+++EXPORT NOTIFICATION?: 13DE955177475557E8 '
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
FTX+DIN+++* BEI ABLIEFERHINDERNISSEN AUSSCHLIESLICH KONTAKTAUFNAHME'
FTX+DIN+++* MIT DACHSER ROTTENBURG, TEL. 07457/730-150.'
FTX+DIN+++* KEINE ZUSTELLAVISIERUNG BEIM EMPFANGER !'
FTX+DIN+++RE.AE ANBEI!!'
TOD+5++DAF'
RFF+FF:04028460883'
RFF+CR:832487'
GOR+1+5'
DOC+830+13DE955177475557E8 '
DTM+137:201305281655:203'
NAD+CZ+08029838++IVM CHEMICALS GMBH+JOHANNES-KEPLER-STR. 3+HERRENBERG++71083+DE'
NAD+CN+00001010++JAVOR+RUDI CAJAVACA 3+PRIJEDOR++79000+BA'
LOC+11+BOSNIEN-HERZEGOWINA'
GID+1+53:BI'
FTX+AAA+++HOLZLACKE UND HARTER'
MEA+WT+AAE+KGM:598'
PCI+24+00340258760564730592'
PCI+28+832487'
DGS+ADR+3:F1+1263++II'
FTX+F02+++BU::12'
FTX+AAD+++FARBE'
FTX+BAM+++8619'
FTX+DAC+++7575'
FTX+RAH+++D/E'
MEA+WT+AAE+KGM:300'
DGS+ADR+3:F1+1263++II'
FTX+F02+++KK::18'
FTX+AAD+++FARBE'
FTX+BAM+++8619'
FTX+DAC+++7575'
FTX+RAH+++D/E'
MEA+WT+AAE+KGM:45'
DGS+ADR+3:F1+1263++II'
FTX+F02+++BU::7'
FTX+AAD+++FARBZUBEHOERSTOFFE'
FTX+BAM+++8563'
FTX+DAC+++7553'
FTX+RAH+++D/E'
MEA+WT+AAE+KGM:155'
DGS+ADR+3:F1+1263++III'
FTX+F02+++BU::1'
FTX+AAD+++FARBE'
FTX+BAM+++3054'
FTX+DAC+++2624'
FTX+RAH+++D/E'
MEA+WT+AAE+KGM:18'
CNI+7+4256317559'
DTM+63:201306120000:203'
DTM+137:20130531:102'
TSR+++3'
MOA+116:649.79:EUR'
FTX+ACB+++EXPORT NOTIFICATION?: 13DE510277774392E6 '
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
FTX+DIN+++KEINE ANLIEFERUNG IN GITTERBOXEN ! ! !'
FTX+DIN+++12.06.2013'
FTX+DIN+++URSPRUNGSERKLARUNG?:'
FTX+DIN+++THE EXPORTER OF THE PRODUCTS COVERED BY THIS DOCUMENT'
FTX+DIN+++(CUSTOMS AUTHORIZATION NO. DE/5100/EA/0083) DECLARES THAT,'
FTX+DIN+++EXCEPT WHERE OTHERWISE CLEARLY INDICATED, THESE PRODUCTS ARE'
FTX+DIN+++CE PREFERENTIAL ORIGIN.'
TOD+5++DD1'
RFF+FF:04256317559'
RFF+CR:81442007'
GOR+1+5'
DOC+830+13DE510277774392E6 '
DTM+137:201305301248:203'
NAD+CZ+14003803++MARLEY-DEUTSCHLAND GMBH+ADOLF-OESTERHELD-STR. 28+WUNSTORF++31515+DE'
NAD+CN+41060495++OBI BANJA LUKA MARKET 714:AX TROPIC D.O.O+BRANKA POPOVICA 310+BANJA LUKA, REPUBLIKA SRPS++78000+BA'
GID+1+1:PC'
FTX+AAA+++BAUBEDARFSARTIKEL,RI'
MEA+WT+AAE+KGM:181'
MEA+VOL++MTQ:4.208'
PCI+24+00340026440179787510:00340026440179787497:00340026440179787503:00340026440179787527:00340026440179787541:00340026440179787534'
PCI+28+81442007'
GID+2+3:EP'
FTX+AAA+++FORMSTUCKE, VERSCHLU'
PCI+28+81442007'
GID+3+2:BH'
FTX+AAA+++ROHRE NAHTLOS AUS PO'
PCI+28+81442007'
CNI+8+4256315260'
DTM+137:20130530:102'
TSR+++3'
MOA+116:1874.48:EUR'
FTX+ACB+++EXPORT NOTIFICATION?: 13DE345477633773E5 '
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
FTX+DIN+++ZUSATZINFO EMPFAENGER?:'
FTX+DIN+++ZUSATZINFO VERSENDER?:'
FTX+DIN+++ACHTUNG ZOLLGUT; ANLAGE ZOLLVERSANDSCHEIN-NR.?:'
FTX+DIN+++AUFTRAGSNR.?: 813957'
FTX+DIN+++34012090, 39249000, 69120090, 70099200, 73249000,'
FTX+DIN+++84798997, 94032080, 96039091'
FTX+DIN+++ACHTUNG ZOLLGUT! ANLAGE ZOLLVERSANDSCHEIN-NR.?:'
FTX+DIN+++RECHNUNG, AE NR. 13DE345477633773E5, ZTN?:'
TOD+5++DD1'
RFF+FF:04256315260'
GOR+1+5'
DOC+830+13DE345477633773E5 '
DTM+137:201305302002:203'
NAD+CZ+02013046++SANWOOD BAD-AUSSTATTUNGS-:GMBH ?+ CO. VERTRIEBS KG+KASSELER STR. 58+FULDABRUECK++34277+DE'
NAD+CN+41060733++BAU & GARTEN D.O.O.:OBI-MARKET 711+LUZANSKO POLJE 9+SARAJEVO++71000+BA'
GID+1+1:PE'
FTX+AAA+++BADAUSSTATTUNGSPRODU'
MEA+WT+AAE+KGM:162'
PCI+24+00340395121010288409'
PCI+28+727887'
CNI+9+4256128757'
DTM+137:20130527:102'
TSR+++3'
MOA+116:1334.8:EUR'
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
TOD+5++EXW'
RFF+FF:04256128757'
RFF+CR:4028336126'
GOR+1+5'
NAD+CZ+00001019++SISAS BG+KUKLENSKO SHOSE BLVD+PLOVDIV++4000+BG'
NAD+CN+00001022++TIMING DOO TUZLA+PUT KRI#ANI BR 69+TUZLA++75000+BA'
GID+1+1:ST'
FTX+AAA+++SPEED BUMP'
MEA+WT+AAE+KGM:930'
MEA+VOL++MTQ:1.4'
PCI+24+00338002241819025460'
CNI+10+4028457465'
DTM+137:20130529:102'
TSR+++3'
MOA+116:144.35:EUR'
FTX+ACB+++EXPORT NOTIFICATION?: 13NL0D968A2BA61330 '
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
FTX+ACB+++10.06.2013 MAX. DELIVERY DATE'
TOD+5++DD1'
RFF+FF:04028457465'
RFF+CR:95175940-886494'
RFF+DQ:0095175940'
GOR+1+5'
DOC+830+13NL0D968A2BA61330 '
DTM+137:201305281527:203'
NAD+CZ+00132737++VILLEROY & BOCH:WELLNESS BV+DWAZZIEWEGEN 13+RODEN++9301ZR+NL'
NAD+CN+00001015++ORFEJ DOO+IVANA GORANA KOVACICA BB+BANJA LUKA++78000+BA'
GID+1+1:PE'
FTX+AAA+++SANITAIR'
MEA+WT+AAE+KGM:27'
MEA+VOL++MTQ:1.12'
DIM+1+M:0.8:1:1.4'
PCI+24+00340258760564603056'
PCI+28+95175940-886494'
CNI+11+4256305013'
DTM+137:20130531:102'
TSR+++3'
MOA+116:167.2:EUR'
FTX+ACB+++EXPORT NOTIFICATION?: 13DE800377735342E0 '
FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !'
FTX+ACB+++LS?: 106379'
FTX+DIN+++PLEASE TAKE CARE OF COMPLETE DELIVERY'
FTX+DIN+++* THE PACKING LIST CAN BE FOUND WITH THE GOODSU *'
TOD+5++DD1'
RFF+FF:04256305013'
RFF+CR:SD13086042'
RFF+DQ:106379'
GOR+1+5'
DOC+830+13DE800377735342E0 '
DTM+137:201305291843:203'
NAD+CZ+27008525++ZETT LITE LIGHTING GMBH+BOSCHSTRASSE 1-10+HERZEBROCK-CLARHOLZ++33442+DE'
NAD+CN+41060733++OBI SARAJEVO MARKET 711:BAU & GARTEN D.O.O.+LUZANSKO POLJE 9+SARAJEVO++71000+BA'
GID+1+1:PC'
FTX+AAA+++LEUCHTEN'
MEA+WT+AAE+KGM:7'
MEA+VOL++MTQ:0.05'
PCI+24+00340048940860420013'
PCI+28+SD13086042'
UNT+308+M130531235340A'
UNZ+1+1389'
UN/EDIFACT Integration
● BizTalk
UN/EDIFACT Integration
● BizTalk – yeah right.
UN/EDIFACT Integration
● C# ?
● http://www.codeproject.com/Articles/11278/EDIFACT-to-XML-to-Anything-You-Want
● Static typing
– “Good for bigger projects” - they say
UN/EDIFACT Integration
● ~ 10 000 lines of code for description
Ruby to the Rescue!
● Ruby!
– Edi4r gem
– 0 lines for describing messages (yaay dynamic
typing!)
Ruby to the Rescue!
● Parser
Ruby to the Rescue!
● Parser
Ruby to the Rescue!
● Model (Active Record, MSSQL, LINQ2SQL)
Ruby to the Rescue!
● Putting it together
Ruby to the Rescue!
● Putting it together
● Generator
– Easier!
– Ruby DSL magic!
● Generator
– Behind the scenes
Result
Thank you!

More Related Content

Recently uploaded

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 

Recently uploaded (20)

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 

Featured

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

Featured (20)

AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 

Ruby to the Rescue!

  • 1. Ruby to the Rescue!
  • 2. Agenda ● About me ● What is this not about ● Ruby to the Rescue!
  • 3. About me ● Senad Uka – (twitter: @senaduka) ● A-net d.o.o., Compusight d.o.o. ● Today: Six Sigma Software d.o.o.
  • 4. About me ● On the side: – M0 – http://www.mhalka.com – FlapsApps – http://www.flapsapps.com ● Ruby and I: – End of 2005. (Rails 1.0 release!)
  • 5. What is this not about? ● Ruby “rescue” statement ● Rails – It's not cool anymore ;)
  • 6. ● A beautiful summer day
  • 8. The Project ● Logistics industry ● 1 month to the first phase production ● Web Application + Integration software ● Canceled vacation plans !
  • 9. Web Application ● ASP.NET Web Forms ● MS SQL SERVER ● Windows Server
  • 10. UN/EDIFACT Integration ● 4 kinds of messages ● 2 way communication (over FTP server running on IBM System/360?!) ● Cca. 500 printed pages of computer unreadable specification ● Cca. 5% chance of errors (syntax & semantics)
  • 11. EDIFACT SAMPLE ● UNA:+.? ' ● UNB+UNOC:3+4023083000008+1929+110906:1458+346' ● UNH+M110906145822A+IFCSUM:S:93A:UN' ● BGM+787+172' ● FTX+SPH++T' ● CNT+10:4:PCE' ● CNT+7:330:KGM' ● CNT+11:10:PCE' ● RFF+FF:0100000545196900172' ● DTM+171:20110906:102' ● TDT+20++3+31:BARCELONE++++:::BARCELONE:F' ● DTM+186:201109061048:203' ● NAD+CS+54665033400396' ● DOC+787+172' ● DTM+137:20110906:102' ● NAD+DC+1902' ● NAD+F03+1902' ● EQD+SW+339YE85' ● CNI+1+4230783213' ● DTM+137:20110905:102' ● TSR+++7' ● UNA:+.? ' UNB+UNOC:3+4023083000008+INTERSPEDS+130531:2353+1389' UNH+M130531235340A+IFCSUM:S:93A:UN' BGM+787+425' CNT+10:11:PCE' CNT+7:3164:KGM' CNT+11:87:PCE' RFF+FF:0100000300171300425' DTM+171:20130531:102' TDT+20++3+31++++:::SARAJEVO 01?:15:SRB' DTM+186:201305312353:203' NAD+CS+04900000300' DOC+787+425' DTM+137:20130531:102' NAD+DC+INTERSA01' CNI+1+4028417482' DTM+137:20130528:102' TSR+++3' MOA+116:3581.75:EUR' FTX+ACB+++EXPORT NOTIFICATION?: 13PL445010E0083932 ' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' FTX+ACB+++NIE PI TROWA' FTX+ACB+++OS. KONT. SELMIR SABITOV, 0038735279196' FTX+ACB+++WYCENA WDL. OFERTY?:3244444 ; 120,57 EUR' TOD+5++DD1' RFF+FF:04028417482' RFF+CR:FSE-44/13/FSE' GOR+1+5' DOC+830+13PL445010E0083932 ' DTM+137:201305271538:203' NAD+CZ+00146561++BIUROMAX SP. Z O.O.+UL. SOLEC 156 A+BANIOCHA++05-532+PL' NAD+CN+00001007++GIZMO D.O.O. ZA PROMET I USLUG+STUPINE B6 / LAMELA 7+TUZLA++75000+BA' GID+1+1:EP' FTX+AAA+++TUSZE,TONERY,CZCI' MEA+WT+AAE+KGM:240' MEA+VOL++MTQ:1.008' DIM+1+M:1.2:0.8:1.05' PCI+24+00340258760563375862' PCI+28+FSE-44/13/FSE' CNI+2+1114738181' DTM+137:20130530:102' TSR+++3+HAZ' MOA+116:286.5:EUR' FTX+ACB+++COMERCIAL INVOICE?: 202009647' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' FTX+DIN+++WARE IST NICHT STAPELBAR!!!' TOD+5++DD1' RFF+FF:01114738181' RFF+CR:330454' GOR+1+5' DOC+380+202009647' DTM+137:201305141953:203' NAD+CZ+11032163++CTA GMBH+INDUSTRIESTR. 2+BIETIGHEIM-BISSINGEN++74321+DE' NAD+CN+00001004++DIT TUZLA BO:BLAZENKA MARKOVIC+V. IVANOVICA 31+TUZLA++75000+BA' GID+1+1:PE' FTX+AAA+++NALCO VARIDOS LASERC' MEA+WT+AAE+KGM:17' MEA+VOL++MTQ:0.113' PCI+24+00340228090132716635' PCI+28+380/ 202009647' DGS+ADR' FTX+ADW+++LQ' MEA+WT+AAE+KGM:11' CNI+3+4028494560' DTM+137:20130529:102' TSR+++3+HAZ' MOA+116:10711.56:EUR' FTX+ACB+++EXPORT NOTIFICATION?: 13DE810377614381E0 ' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' TOD+5++DD1' RFF+FF:04028494560' RFF+CR:1729256' GOR+1+5' DOC+830+13DE810377614381E0 ' DTM+137:201305281406:203' NAD+CZ+18019513++DREVE OTOPLASTIK GMBH+MAX-PLANCK-STR. 31+UNNA++59423+DE' NAD+CN+00001025++WIDEX SLUSNI APARATI D.O.O.:MR RASIM GRANULO+GRADACACKA 29 A+SARAJEVO++71000+BA' GID+1+1:PE' FTX+AAA+++ROHR,SCHLAUCH,LACK.' MEA+WT+AAE+KGM:196' MEA+VOL++MTQ:0.686' DIM+1+M:0.6:0.8:1.43' PCI+24+00340258760564496900' PCI+28+1729256' DGS+ADR' FTX+ADW+++LQ' MEA+WT+AAE+KGM:1' CNI+4+4028495569' DTM+63:201306040000:203' DTM+137:20130530:102' TSR+++3+HAZ' MOA+116:2690:EUR' FTX+ACB+++EXPORT NOTIFICATION?: 13DE505277624224E7 ' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' FTX+DEL+++20 SACK SIND AUF EINER PALETTE' FTX+DIN+++DELIVERY DATE?: DUE TO 04.06.2013' TOD+5++DD1' RFF+FF:04028495569' RFF+CR:80023343' RFF+DQ:80023343' GOR+1+5' DOC+830+13DE505277624224E7 ' DTM+137:20130529851:203' NAD+CZ+06003869++HEUBACH GMBH+HEUBACHSTR. 7+LANGELSHEIM++38685+DE' NAD+CN+00001014++NUTAL D.O.O.+POCULICA+VITEZ++72250+BA' GID+1+20:SA' FTX+AAA+++HEUCOTRON YELLOW' MEA+WT+AAE+KGM:506' MEA+LMT++M:0.5' PCI+24+00340258760564518275' PCI+28+80023343' DGS+ADR+6.1:T5+2291++III' FTX+F02+++SA::20' FTX+AAD+++BLEIVERBINDUNG, LOESLICH, N.A.G.' FTX+AAE+++BLEICHROMAT' FTX+BAM+++1218' FTX+DAC+++1182' FTX+RAH+++E' FTX+HAZ++15:ZZZ' MEA+WT+AAE+KGM:500' CNI+5+33000486806' DTM+137:20130530:102' TSR+++3' MOA+116:4921.77:EUR' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' TOD+5++DD1' RFF+FF:33000486806' GOR+1+5' NAD+CZ+33300427++HYDROCHEM S.R.O.:IAO?: 35861843+¯OLTESOVEJ 20+BRATISLAVA 1++82108+SK' NAD+CN+00001008++HIDROINœENJERING PJ BR??KO+UL. BRA??E ??USKI??A 17+BRAKO 1++76101+BA' GID+1+1:BI' FTX+AAA+++ELEKTROMOTOR' MEA+WT+AAE+KGM:300' PCI+24+00340465760004742473' CNI+6+4028460883' DTM+137:20130529:102' TSR+++3+HAZ' MOA+116:3219.52:EUR' FTX+ACB+++EXPORT NOTIFICATION?: 13DE955177475557E8 ' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' FTX+DIN+++* BEI ABLIEFERHINDERNISSEN AUSSCHLIESLICH KONTAKTAUFNAHME' FTX+DIN+++* MIT DACHSER ROTTENBURG, TEL. 07457/730-150.' FTX+DIN+++* KEINE ZUSTELLAVISIERUNG BEIM EMPFANGER !' FTX+DIN+++RE.AE ANBEI!!' TOD+5++DAF' RFF+FF:04028460883' RFF+CR:832487' GOR+1+5' DOC+830+13DE955177475557E8 ' DTM+137:201305281655:203' NAD+CZ+08029838++IVM CHEMICALS GMBH+JOHANNES-KEPLER-STR. 3+HERRENBERG++71083+DE' NAD+CN+00001010++JAVOR+RUDI CAJAVACA 3+PRIJEDOR++79000+BA' LOC+11+BOSNIEN-HERZEGOWINA' GID+1+53:BI' FTX+AAA+++HOLZLACKE UND HARTER' MEA+WT+AAE+KGM:598' PCI+24+00340258760564730592' PCI+28+832487' DGS+ADR+3:F1+1263++II' FTX+F02+++BU::12' FTX+AAD+++FARBE' FTX+BAM+++8619' FTX+DAC+++7575' FTX+RAH+++D/E' MEA+WT+AAE+KGM:300' DGS+ADR+3:F1+1263++II' FTX+F02+++KK::18' FTX+AAD+++FARBE' FTX+BAM+++8619' FTX+DAC+++7575' FTX+RAH+++D/E' MEA+WT+AAE+KGM:45' DGS+ADR+3:F1+1263++II' FTX+F02+++BU::7' FTX+AAD+++FARBZUBEHOERSTOFFE' FTX+BAM+++8563' FTX+DAC+++7553' FTX+RAH+++D/E' MEA+WT+AAE+KGM:155' DGS+ADR+3:F1+1263++III' FTX+F02+++BU::1' FTX+AAD+++FARBE' FTX+BAM+++3054' FTX+DAC+++2624' FTX+RAH+++D/E' MEA+WT+AAE+KGM:18' CNI+7+4256317559' DTM+63:201306120000:203' DTM+137:20130531:102' TSR+++3' MOA+116:649.79:EUR' FTX+ACB+++EXPORT NOTIFICATION?: 13DE510277774392E6 ' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' FTX+DIN+++KEINE ANLIEFERUNG IN GITTERBOXEN ! ! !' FTX+DIN+++12.06.2013' FTX+DIN+++URSPRUNGSERKLARUNG?:' FTX+DIN+++THE EXPORTER OF THE PRODUCTS COVERED BY THIS DOCUMENT' FTX+DIN+++(CUSTOMS AUTHORIZATION NO. DE/5100/EA/0083) DECLARES THAT,' FTX+DIN+++EXCEPT WHERE OTHERWISE CLEARLY INDICATED, THESE PRODUCTS ARE' FTX+DIN+++CE PREFERENTIAL ORIGIN.' TOD+5++DD1' RFF+FF:04256317559' RFF+CR:81442007' GOR+1+5' DOC+830+13DE510277774392E6 ' DTM+137:201305301248:203' NAD+CZ+14003803++MARLEY-DEUTSCHLAND GMBH+ADOLF-OESTERHELD-STR. 28+WUNSTORF++31515+DE' NAD+CN+41060495++OBI BANJA LUKA MARKET 714:AX TROPIC D.O.O+BRANKA POPOVICA 310+BANJA LUKA, REPUBLIKA SRPS++78000+BA' GID+1+1:PC' FTX+AAA+++BAUBEDARFSARTIKEL,RI' MEA+WT+AAE+KGM:181' MEA+VOL++MTQ:4.208' PCI+24+00340026440179787510:00340026440179787497:00340026440179787503:00340026440179787527:00340026440179787541:00340026440179787534' PCI+28+81442007' GID+2+3:EP' FTX+AAA+++FORMSTUCKE, VERSCHLU' PCI+28+81442007' GID+3+2:BH' FTX+AAA+++ROHRE NAHTLOS AUS PO' PCI+28+81442007' CNI+8+4256315260' DTM+137:20130530:102' TSR+++3' MOA+116:1874.48:EUR' FTX+ACB+++EXPORT NOTIFICATION?: 13DE345477633773E5 ' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' FTX+DIN+++ZUSATZINFO EMPFAENGER?:' FTX+DIN+++ZUSATZINFO VERSENDER?:' FTX+DIN+++ACHTUNG ZOLLGUT; ANLAGE ZOLLVERSANDSCHEIN-NR.?:' FTX+DIN+++AUFTRAGSNR.?: 813957' FTX+DIN+++34012090, 39249000, 69120090, 70099200, 73249000,' FTX+DIN+++84798997, 94032080, 96039091' FTX+DIN+++ACHTUNG ZOLLGUT! ANLAGE ZOLLVERSANDSCHEIN-NR.?:' FTX+DIN+++RECHNUNG, AE NR. 13DE345477633773E5, ZTN?:' TOD+5++DD1' RFF+FF:04256315260' GOR+1+5' DOC+830+13DE345477633773E5 ' DTM+137:201305302002:203' NAD+CZ+02013046++SANWOOD BAD-AUSSTATTUNGS-:GMBH ?+ CO. VERTRIEBS KG+KASSELER STR. 58+FULDABRUECK++34277+DE' NAD+CN+41060733++BAU & GARTEN D.O.O.:OBI-MARKET 711+LUZANSKO POLJE 9+SARAJEVO++71000+BA' GID+1+1:PE' FTX+AAA+++BADAUSSTATTUNGSPRODU' MEA+WT+AAE+KGM:162' PCI+24+00340395121010288409' PCI+28+727887' CNI+9+4256128757' DTM+137:20130527:102' TSR+++3' MOA+116:1334.8:EUR' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' TOD+5++EXW' RFF+FF:04256128757' RFF+CR:4028336126' GOR+1+5' NAD+CZ+00001019++SISAS BG+KUKLENSKO SHOSE BLVD+PLOVDIV++4000+BG' NAD+CN+00001022++TIMING DOO TUZLA+PUT KRI#ANI BR 69+TUZLA++75000+BA' GID+1+1:ST' FTX+AAA+++SPEED BUMP' MEA+WT+AAE+KGM:930' MEA+VOL++MTQ:1.4' PCI+24+00338002241819025460' CNI+10+4028457465' DTM+137:20130529:102' TSR+++3' MOA+116:144.35:EUR' FTX+ACB+++EXPORT NOTIFICATION?: 13NL0D968A2BA61330 ' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' FTX+ACB+++10.06.2013 MAX. DELIVERY DATE' TOD+5++DD1' RFF+FF:04028457465' RFF+CR:95175940-886494' RFF+DQ:0095175940' GOR+1+5' DOC+830+13NL0D968A2BA61330 ' DTM+137:201305281527:203' NAD+CZ+00132737++VILLEROY & BOCH:WELLNESS BV+DWAZZIEWEGEN 13+RODEN++9301ZR+NL' NAD+CN+00001015++ORFEJ DOO+IVANA GORANA KOVACICA BB+BANJA LUKA++78000+BA' GID+1+1:PE' FTX+AAA+++SANITAIR' MEA+WT+AAE+KGM:27' MEA+VOL++MTQ:1.12' DIM+1+M:0.8:1:1.4' PCI+24+00340258760564603056' PCI+28+95175940-886494' CNI+11+4256305013' DTM+137:20130531:102' TSR+++3' MOA+116:167.2:EUR' FTX+ACB+++EXPORT NOTIFICATION?: 13DE800377735342E0 ' FTX+DIN+++GOODS UNDER CUSTOMS CONTROL !' FTX+ACB+++LS?: 106379' FTX+DIN+++PLEASE TAKE CARE OF COMPLETE DELIVERY' FTX+DIN+++* THE PACKING LIST CAN BE FOUND WITH THE GOODSU *' TOD+5++DD1' RFF+FF:04256305013' RFF+CR:SD13086042' RFF+DQ:106379' GOR+1+5' DOC+830+13DE800377735342E0 ' DTM+137:201305291843:203' NAD+CZ+27008525++ZETT LITE LIGHTING GMBH+BOSCHSTRASSE 1-10+HERZEBROCK-CLARHOLZ++33442+DE' NAD+CN+41060733++OBI SARAJEVO MARKET 711:BAU & GARTEN D.O.O.+LUZANSKO POLJE 9+SARAJEVO++71000+BA' GID+1+1:PC' FTX+AAA+++LEUCHTEN' MEA+WT+AAE+KGM:7' MEA+VOL++MTQ:0.05' PCI+24+00340048940860420013' PCI+28+SD13086042' UNT+308+M130531235340A' UNZ+1+1389'
  • 14. UN/EDIFACT Integration ● C# ? ● http://www.codeproject.com/Articles/11278/EDIFACT-to-XML-to-Anything-You-Want ● Static typing – “Good for bigger projects” - they say
  • 15. UN/EDIFACT Integration ● ~ 10 000 lines of code for description
  • 16. Ruby to the Rescue! ● Ruby! – Edi4r gem – 0 lines for describing messages (yaay dynamic typing!)
  • 17. Ruby to the Rescue! ● Parser
  • 18. Ruby to the Rescue! ● Parser
  • 19. Ruby to the Rescue! ● Model (Active Record, MSSQL, LINQ2SQL)
  • 20. Ruby to the Rescue! ● Putting it together
  • 21. Ruby to the Rescue! ● Putting it together
  • 22. ● Generator – Easier! – Ruby DSL magic!