Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. It amazes me SAP makes so much money...

It amazes me SAP makes so much money...

Scheduled Pinned Locked Moved The Lounge
databasebusinessxmlquestion
66 Posts 28 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Sander RosselS Sander Rossel

    This is a warning. If you are currently happy with your life do not continue reading. I cannot guarantee you will ever be happy, find love, see beauty or sleep at night again after reading this. So, don't say I didn't warn you. One shop I worked at, that used SQL Server 2005 and up with VB.NET 2.0 and up, did not use the BIT data type, nor did they use a numeric type with 0 and 1. Instead, they used the MBoolean, M being the first letter of the company name. The MBoolean was a CHAR(1). Now you might expect it to be Y or N. It wasn't. It could actually have the values J and N, from the Dutch Ja (yes) and Nee (no). The worst part was that they often didn't even bother to cast J/N to a regular boolean (not even in .NET), the code was littered with If something = "J" Then... Because doing things in Dutch is so much easier when finding help on the internet. Not even the Dutch people understood the J/N boolean :doh: The reason for the J/N had something to do with Clipper, Visual Basic (pre-.NET) and dBase all handling booleans differently.

    Best, Sander arrgh.js - Bringing LINQ to JavaScript SQL Server for C# Developers Succinctly Object-Oriented Programming in C# Succinctly

    J Offline
    J Offline
    Jeremy Falcon
    wrote on last edited by
    #55

    Sander Rossel wrote:

    So, don't say I didn't warn you.

    And yet, I read it.... :sigh: Maybe they could get a job at SAP? :rolleyes:

    Jeremy Falcon

    1 Reply Last reply
    0
    • J Jeremy Falcon

      Sander Rossel wrote:

      Or is that obvious advice?

      Sure, but you assumed I had no idea what I was talking about and missed the point. Let me use an example, you say "hey" and then I say a 10 page essay on the origins of "hey"... because I just can't wait to tell someone what I know and/or read. Whether or not you know this already doesn't matter, I just want to say it. That's the IT way man. I never asked or even pretended to not-know, you just assumed it when "correcting" or informing me. You can say that wasn't the premise and the idea is to inform the world at large, but I believe if that were the case you would've said so. Computer people just love assuming people are clueless man, lack of social skills.

      Sander Rossel wrote:

      Were I in the Westland it would be yellowish (due to the many greenhouses that seem to set the sky alight).

      :doh: :-D

      Jeremy Falcon

      Sander RosselS Offline
      Sander RosselS Offline
      Sander Rossel
      wrote on last edited by
      #56

      Sorry man, you seem quite bothered by my little ISO comment. I was just trying to cut the SAP people a little slack, but you are merciless! :laugh:

      Jeremy Falcon wrote:

      you say "hey" and then I say a 10 page essay on the origins of "hey"

      Did you just assume I can read!? :laugh: I hear assuming genders is a thing nowadays :doh: Anyway, to assume makes and ass of u and me :)

      Best, Sander arrgh.js - Bringing LINQ to JavaScript SQL Server for C# Developers Succinctly Object-Oriented Programming in C# Succinctly

      J 1 Reply Last reply
      0
      • Sander RosselS Sander Rossel

        Sorry man, you seem quite bothered by my little ISO comment. I was just trying to cut the SAP people a little slack, but you are merciless! :laugh:

        Jeremy Falcon wrote:

        you say "hey" and then I say a 10 page essay on the origins of "hey"

        Did you just assume I can read!? :laugh: I hear assuming genders is a thing nowadays :doh: Anyway, to assume makes and ass of u and me :)

        Best, Sander arrgh.js - Bringing LINQ to JavaScript SQL Server for C# Developers Succinctly Object-Oriented Programming in C# Succinctly

        J Offline
        J Offline
        Jeremy Falcon
        wrote on last edited by
        #57

        Sander Rossel wrote:

        Sorry man, you seem quite bothered by my little ISO comment.

        I suppose a wee bit. Just a bit too used to dealing with people in this industry trying to "show off knowledge" without regards to the actual conversation ya know. Anyway, I'll shut up now.

        Sander Rossel wrote:

        I was just trying to cut the SAP people a little slack, but you are merciless!

        No comment. :-O

        Sander Rossel wrote:

        Anyway, to assume makes and ass of u and me

        Maybe, but I'd rather be an ass than a SAP developer. :)

        Jeremy Falcon

        Sander RosselS 1 Reply Last reply
        0
        • N Nathan Minier

          Long statement about Google, Mary Ann Davidson, and the pain of working with Oracle products. Realized that I don't care, not worth kvetching over. [Oracle security chief to customers: Stop checking our code for vulnerabilities [Updated] | Ars Technica](http://arstechnica.com/information-technology/2015/08/oracle-security-chief-to-customers-stop-checking-our-code-for-vulnerabilities/) is worth the read for a laugh, if you're not familiar. I do need to point out that while no one has ever gotten rich by being lazy, many people have gotten rich in spite of being lazy.

          "There are three kinds of lies: lies, damned lies and statistics." - Benjamin Disraeli

          Sander RosselS Offline
          Sander RosselS Offline
          Sander Rossel
          wrote on last edited by
          #58

          Nathan Minier wrote:

          worth the read for a laugh, if you're not familiar.

          I know it :D I really dislike Oracle. Their lust for lawsuits, money and overall attitude is among the worst in the business and their flagship database is a horror to work with :sigh:

          Nathan Minier wrote:

          many people have gotten rich in spite of being lazy

          I guess some people get lucky...

          Best, Sander arrgh.js - Bringing LINQ to JavaScript SQL Server for C# Developers Succinctly Object-Oriented Programming in C# Succinctly

          1 Reply Last reply
          0
          • D DodgyCode

            I reckon I can handle step 1 and 3. Could you please expand on step 2.

            Sander RosselS Offline
            Sander RosselS Offline
            Sander Rossel
            wrote on last edited by
            #59

            Step 2 is to send me money :D

            Best, Sander arrgh.js - Bringing LINQ to JavaScript SQL Server for C# Developers Succinctly Object-Oriented Programming in C# Succinctly

            1 Reply Last reply
            0
            • J Jeremy Falcon

              Sander Rossel wrote:

              Sorry man, you seem quite bothered by my little ISO comment.

              I suppose a wee bit. Just a bit too used to dealing with people in this industry trying to "show off knowledge" without regards to the actual conversation ya know. Anyway, I'll shut up now.

              Sander Rossel wrote:

              I was just trying to cut the SAP people a little slack, but you are merciless!

              No comment. :-O

              Sander Rossel wrote:

              Anyway, to assume makes and ass of u and me

              Maybe, but I'd rather be an ass than a SAP developer. :)

              Jeremy Falcon

              Sander RosselS Offline
              Sander RosselS Offline
              Sander Rossel
              wrote on last edited by
              #60

              Jeremy Falcon wrote:

              people in this industry trying to "show off knowledge"

              I'll show off with my books and articles, no lounge post can tip that :) I really only mentioned that just to show off.

              Jeremy Falcon wrote:

              Maybe, but I'd rather be an ass than a SAP developer. :)

              What's the difference? :laugh:

              Best, Sander arrgh.js - Bringing LINQ to JavaScript SQL Server for C# Developers Succinctly Object-Oriented Programming in C# Succinctly

              J 1 Reply Last reply
              0
              • Sander RosselS Sander Rossel

                Jeremy Falcon wrote:

                using text fields for boolean logic

                To be fair, a boolean isn't part of the ISO specification (Oracle, for example, doesn't have a boolean data type). So you either use a numeric type and restrict it to 0 and 1 or you use a text type and restrict it to Y and N. I've seen the Y/N a lot (although I don't agree with it). At least be glad they documented it properly! What's more important, the average user will never see any of this. What matters to them is that it works and gives them the functionality they need and somehow it does. They don't care about your petty programmer problems like casting Y/N to booleans and keeping your data consistent without foreign keys.

                Best, Sander arrgh.js - Bringing LINQ to JavaScript SQL Server for C# Developers Succinctly Object-Oriented Programming in C# Succinctly

                G Offline
                G Offline
                Greg Lovekamp
                wrote on last edited by
                #61

                Actually, a byte for a character and a bit are frequently implemented the same: takes one bit of the eight for the value and ignores the other seven. An int would be four bytes; short int could be as small as two. So just about anyway you cut it, Y/N isn't that bad of choice. It is even self documenting!

                1 Reply Last reply
                0
                • J Jeremy Falcon

                  Surely, I can't be the only person to go through bits of SAP and think, if they can sell this, then in tech you apparently can pretty much shrink wrap and sell a turd to people who don't know any better. The more I dig into SAP the more WTFs I see. For instance... SAP Business One 8.8 Administration system ADP1 table definitions[^] From this one table alone I can see 3 problems at least... archaic naming convention, using text fields for boolean logic, and not using an ENUM field or lookup table where appropriate. More if I try, and this isn't counting the fact there are no foreign keys in the database, some of the denormalized data I've seen, and some stored procs with unnecessarily needed hard coded values. :doh:

                  Jeremy Falcon

                  D Offline
                  D Offline
                  David Radcliffe 0
                  wrote on last edited by
                  #62

                  It also amazes me that Citrix got installed in so many places - must be the CEO who bought it on the basis of "zero admin costs" and "reducing PC estate" claims.... Every infrastructure team I've ever spoke to about it HATE it and spend more time supporting it than they ever did with proper PC desktops....

                  1 Reply Last reply
                  0
                  • J Jeremy Falcon

                    Surely, I can't be the only person to go through bits of SAP and think, if they can sell this, then in tech you apparently can pretty much shrink wrap and sell a turd to people who don't know any better. The more I dig into SAP the more WTFs I see. For instance... SAP Business One 8.8 Administration system ADP1 table definitions[^] From this one table alone I can see 3 problems at least... archaic naming convention, using text fields for boolean logic, and not using an ENUM field or lookup table where appropriate. More if I try, and this isn't counting the fact there are no foreign keys in the database, some of the denormalized data I've seen, and some stored procs with unnecessarily needed hard coded values. :doh:

                    Jeremy Falcon

                    M Offline
                    M Offline
                    Member 10346655
                    wrote on last edited by
                    #63

                    Having worked with SBO for many years I can tell you that there are plenty more surprises in store for you... Just wait til you dig deeper and have the pure joy of things like OITM.VatGourpSA (wtf?) or OCPR.E_mailL. Many field names seem like they ran out of vowels (CIN13.LstPchPrce). The thing that drive me nuts in the early days was the 4 character table names. Because, clearly RDR12 is Order Address Extension Data......anyway let me know if you get stuck with anything :)

                    J 1 Reply Last reply
                    0
                    • M Member 10346655

                      Having worked with SBO for many years I can tell you that there are plenty more surprises in store for you... Just wait til you dig deeper and have the pure joy of things like OITM.VatGourpSA (wtf?) or OCPR.E_mailL. Many field names seem like they ran out of vowels (CIN13.LstPchPrce). The thing that drive me nuts in the early days was the 4 character table names. Because, clearly RDR12 is Order Address Extension Data......anyway let me know if you get stuck with anything :)

                      J Offline
                      J Offline
                      Jeremy Falcon
                      wrote on last edited by
                      #64

                      Man, it's like you know my pains. I may take you up on that offer if you don't mind. Although, we're using a plug-in that adds vendor specific tables into the DB, I'm sure you're knowledge would be invaluable.

                      Jeremy Falcon

                      M 1 Reply Last reply
                      0
                      • Sander RosselS Sander Rossel

                        Jeremy Falcon wrote:

                        people in this industry trying to "show off knowledge"

                        I'll show off with my books and articles, no lounge post can tip that :) I really only mentioned that just to show off.

                        Jeremy Falcon wrote:

                        Maybe, but I'd rather be an ass than a SAP developer. :)

                        What's the difference? :laugh:

                        Best, Sander arrgh.js - Bringing LINQ to JavaScript SQL Server for C# Developers Succinctly Object-Oriented Programming in C# Succinctly

                        J Offline
                        J Offline
                        Jeremy Falcon
                        wrote on last edited by
                        #65

                        Sander Rossel wrote:

                        I really only mentioned that just to show off.

                        :laugh: Touché!

                        Jeremy Falcon

                        1 Reply Last reply
                        0
                        • J Jeremy Falcon

                          Man, it's like you know my pains. I may take you up on that offer if you don't mind. Although, we're using a plug-in that adds vendor specific tables into the DB, I'm sure you're knowledge would be invaluable.

                          Jeremy Falcon

                          M Offline
                          M Offline
                          Member 10346655
                          wrote on last edited by
                          #66

                          no worries - drop me a line here or email me anytime.

                          1 Reply Last reply
                          0
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • World
                          • Users
                          • Groups