How complex is this, really?

Discussion in 'ASP .Net' started by sam, Dec 14, 2007.

  1. sam

    sam Guest

    I have been a Window application developer for over 13 years. I know
    SQL though I have been able to avoid it for a vast majority of my
    career. I understand the basics of ASP.Net and Web servers, actually
    put together a VERY basic Asp.net web site for my little business. It
    was basically a static site that I used ASP.Net to implement a fancy
    navigation system. But now I am wondering if I am biting off more
    then I can chew...

    My son's Boy Scout Troop has one big fund raiser each year and I have
    volunteered to revamp the order entry/tracking software. Two people
    from their respected homes will enter the orders into the system
    through out the week. The night of the meeting orders will be entered
    on a laptop that is disconnected from the Internet.

    My whole strategy is to leverage what I know best, Windows.Form
    development. I will develop a basic Windows Application in .Net 3.5
    to enter orders. Originally I had some crazy ideas to make the data
    store XML and sync everything myself. Then last night I learned of
    the existence of SQL Server Compact 3.5 and Sync Services.

    My thought now is to leverage SQL Server Compact 3.5, Sync Services,
    and Web Services. All the web service would be doing is keeping four
    different tables in sync for a handful of known users. My web hosting
    account is .Net 2.0 but I only have access to a MySQL database. One
    of the other things the web service is going to have to do is allow
    large (500K ~ 4M) images to be uploaded (I am going to have the order
    forms scanned into the system to ease order verification).

    It sounds like pretty straight forward web service to me, but is it?
    One of my issues is I don't know how to contend with security.

    Hay, is there anyone out there that might be willing to give me hand
    in this?

    Sam
     
    sam, Dec 14, 2007
    #1
    1. Advertising

  2. Sounds like a lot of effort for a Boy Scout app that doesn't need to do much
    nor for very long, Sam ... but I like the idea of doing a hybrid
    Winforms/Web Services app as a general matter ... you really need to scan
    order forms for verification? sounds like too much digital bling for what
    you're doing here ... but maybe you want to take the opportunity to work on
    that sort of thing?

    Seems to me you could more easily just use HttpWebRequest to POST the home
    orders from the WinForms app to MySQL via a simple ASP or ASP.NET page
    during the week and then just merge that data with the table(s) from the
    meeting ... it's a one-time thing, right? But that wouldn't be as much fun
    or as good of a tech workout ...



    "sam" <> wrote in message
    news:...
    >I have been a Window application developer for over 13 years. I know
    > SQL though I have been able to avoid it for a vast majority of my
    > career. I understand the basics of ASP.Net and Web servers, actually
    > put together a VERY basic Asp.net web site for my little business. It
    > was basically a static site that I used ASP.Net to implement a fancy
    > navigation system. But now I am wondering if I am biting off more
    > then I can chew...
    >
    > My son's Boy Scout Troop has one big fund raiser each year and I have
    > volunteered to revamp the order entry/tracking software. Two people
    > from their respected homes will enter the orders into the system
    > through out the week. The night of the meeting orders will be entered
    > on a laptop that is disconnected from the Internet.
    >
    > My whole strategy is to leverage what I know best, Windows.Form
    > development. I will develop a basic Windows Application in .Net 3.5
    > to enter orders. Originally I had some crazy ideas to make the data
    > store XML and sync everything myself. Then last night I learned of
    > the existence of SQL Server Compact 3.5 and Sync Services.
    >
    > My thought now is to leverage SQL Server Compact 3.5, Sync Services,
    > and Web Services. All the web service would be doing is keeping four
    > different tables in sync for a handful of known users. My web hosting
    > account is .Net 2.0 but I only have access to a MySQL database. One
    > of the other things the web service is going to have to do is allow
    > large (500K ~ 4M) images to be uploaded (I am going to have the order
    > forms scanned into the system to ease order verification).
    >
    > It sounds like pretty straight forward web service to me, but is it?
    > One of my issues is I don't know how to contend with security.
    >
    > Hay, is there anyone out there that might be willing to give me hand
    > in this?
    >
    > Sam
     
    Barrie Wilson, Dec 14, 2007
    #2
    1. Advertising

  3. If it were me, I'd just create an asp.net web app with a SQL backend. Users
    can enter orders on a "public" web site up until the event (hosting is dirt
    cheap). Also install the web app on the notebook (I assume it's yours).

    The night of the event, I'd back up the SQL database and restore it to the
    notebook. You can run the web app locally (on the notebook) the night of the
    meeting and continue to enter orders as usual.

    After the event, you can move the database back to the hosted site (if
    necessary).


    "sam" <> wrote in message
    news:...
    >I have been a Window application developer for over 13 years. I know
    > SQL though I have been able to avoid it for a vast majority of my
    > career. I understand the basics of ASP.Net and Web servers, actually
    > put together a VERY basic Asp.net web site for my little business. It
    > was basically a static site that I used ASP.Net to implement a fancy
    > navigation system. But now I am wondering if I am biting off more
    > then I can chew...
    >
    > My son's Boy Scout Troop has one big fund raiser each year and I have
    > volunteered to revamp the order entry/tracking software. Two people
    > from their respected homes will enter the orders into the system
    > through out the week. The night of the meeting orders will be entered
    > on a laptop that is disconnected from the Internet.
    >
    > My whole strategy is to leverage what I know best, Windows.Form
    > development. I will develop a basic Windows Application in .Net 3.5
    > to enter orders. Originally I had some crazy ideas to make the data
    > store XML and sync everything myself. Then last night I learned of
    > the existence of SQL Server Compact 3.5 and Sync Services.
    >
    > My thought now is to leverage SQL Server Compact 3.5, Sync Services,
    > and Web Services. All the web service would be doing is keeping four
    > different tables in sync for a handful of known users. My web hosting
    > account is .Net 2.0 but I only have access to a MySQL database. One
    > of the other things the web service is going to have to do is allow
    > large (500K ~ 4M) images to be uploaded (I am going to have the order
    > forms scanned into the system to ease order verification).
    >
    > It sounds like pretty straight forward web service to me, but is it?
    > One of my issues is I don't know how to contend with security.
    >
    > Hay, is there anyone out there that might be willing to give me hand
    > in this?
    >
    > Sam
     
    Scott Roberts, Dec 14, 2007
    #3
  4. sam

    sam Guest

    On Dec 14, 12:57 am, "Barrie Wilson" <> wrote:
    > Sounds like a lot of effort for a Boy Scout app that doesn't need to do much
    > nor for very long, Sam ...


    The event happens once a year, so the solution will be used annually.

    > you really need to scan order forms for verification? sounds like too much
    > digital bling for what you're doing here ... but maybe you want to take the
    > opportunity to work on that sort of thing?


    It is two fold, I know imaging well, I am writing image acquisition
    software during the day and I am a professional photographer at night,
    so the concept is right up my ally. From the business side of things,
    the real problem I am trying to solve is this:

    There is one day the product is delivered by all the scouts to all the
    customers. There is someone at a central location that is able to
    take calls when customers call and complain they did not get the
    correct items. In the past they had to figure out which order number
    the person was, find the paper order to determine of there was an
    error in entering the order or if the customer marked the wrong thing.

    My solution is to scan in that order form so that it is easy for
    others to double check that it WAS entered correctly. More
    importantly, on delivery day, make is a one click stop to confirm what
    the customer wrote down.

    P.S. Normally even of the customer marked down the wrong thing, the
    troop tries their best to get the customer what they really wanted;)

    > Seems to me you could more easily just use HttpWebRequest to POST the home
    > orders from the WinForms app to MySQL via a simple ASP or ASP.NET page
    > during the week and then just merge that data with the table(s) from the
    > meeting ... it's a one-time thing, right? But that wouldn't be as much fun
    > or as good of a tech workout ...


    I am really very open to any approach that is fast and easy. Can you
    give me a bit more detail on HttpWebRequest? I looked it up and it
    looks like a generic way to post data to a web server. Would not a
    Web Service be easier because it will do all the packaging and
    unpackaging of the data for me? It is my understanding that
    WebServices is simply Microsoft's version of SOAP which is simply an
    interface to make function calls and to interact with classes over
    HTTP. Am I mistaken?

    Sam
     
    sam, Dec 14, 2007
    #4
  5. sam

    sam Guest

    On Dec 14, 1:23 am, "Scott Roberts" <-webworks-
    software.com> wrote:
    > If it were me, I'd just create an asp.net web app with a SQL backend. Users
    > can enter orders on a "public" web site up until the event (hosting is dirt
    > cheap). Also install the web app on the notebook (I assume it's yours).
    >
    > The night of the event, I'd back up the SQL database and restore it to the
    > notebook. You can run the web app locally (on the notebook) the night of the
    > meeting and continue to enter orders as usual.
    >
    > After the event, you can move the database back to the hosted site (if
    > necessary).


    Well, the thing is... I don't own a laptop:(

    The other thing I did not mention is that the orders/sales goes on for
    about two months. At the weekly meetings the scouts compete against
    one another to see who brought in the most orders. At the meetings,
    orders are entered and reports are generated so the scouts know where
    everyone stands.

    Besides, I would REALLY like to learn more about web development.

    Sam
     
    sam, Dec 14, 2007
    #5
  6. It sounds pretty straightforward, Sam, except for one thing:

    >(I am going to have the order
    > forms scanned into the system to ease order verification).


    There's nothing easy about this approach. First, an order form is a
    container of string data, such as name, address, etc. An image is a
    container of pixel data (colors in a plane). Images are useful with forms
    only when the original form is in a paper format, since a sheet of paper is
    also a container of colors in a plane. To extract string data from an image,
    a human being must display the image and read the data in it. To extract
    string data from a container of string data, a computer can read the string
    data easily. It can also be displayed in a Windows form application, or
    formatted as an image for viewing by humans.

    In addition, string data is small, consisting only of the characters which
    comprise the data. Image data is large, because most of the data is the
    background of the image.

    In other words, any way you slice it, putting your form data into an image
    does nothing to ease order verification, and in fact, makes the whole
    process much more difficult.

    If you have a client Windows Forms app that uploads form data to a Web
    Service, it makes much more sense to upload string data.

    --
    HTH,

    Kevin Spencer
    Chicken Salad Surgeon
    Microsoft MVP

    "sam" <> wrote in message
    news:...
    >I have been a Window application developer for over 13 years. I know
    > SQL though I have been able to avoid it for a vast majority of my
    > career. I understand the basics of ASP.Net and Web servers, actually
    > put together a VERY basic Asp.net web site for my little business. It
    > was basically a static site that I used ASP.Net to implement a fancy
    > navigation system. But now I am wondering if I am biting off more
    > then I can chew...
    >
    > My son's Boy Scout Troop has one big fund raiser each year and I have
    > volunteered to revamp the order entry/tracking software. Two people
    > from their respected homes will enter the orders into the system
    > through out the week. The night of the meeting orders will be entered
    > on a laptop that is disconnected from the Internet.
    >
    > My whole strategy is to leverage what I know best, Windows.Form
    > development. I will develop a basic Windows Application in .Net 3.5
    > to enter orders. Originally I had some crazy ideas to make the data
    > store XML and sync everything myself. Then last night I learned of
    > the existence of SQL Server Compact 3.5 and Sync Services.
    >
    > My thought now is to leverage SQL Server Compact 3.5, Sync Services,
    > and Web Services. All the web service would be doing is keeping four
    > different tables in sync for a handful of known users. My web hosting
    > account is .Net 2.0 but I only have access to a MySQL database. One
    > of the other things the web service is going to have to do is allow
    > large (500K ~ 4M) images to be uploaded (I am going to have the order
    > forms scanned into the system to ease order verification).
    >
    > It sounds like pretty straight forward web service to me, but is it?
    > One of my issues is I don't know how to contend with security.
    >
    > Hay, is there anyone out there that might be willing to give me hand
    > in this?
    >
    > Sam
     
    Kevin Spencer, Dec 14, 2007
    #6
  7. sam

    sam Guest

    On Dec 14, 7:51 am, "Kevin Spencer" <> wrote:
    > It sounds pretty straightforward, Sam, except for one thing:
    >
    > >(I am going to have the order
    > > forms scanned into the system to ease order verification).

    >
    > There's nothing easy about this approach. First, an order form is a
    > container of string data, such as name, address, etc. An image is a
    > container of pixel data (colors in a plane). Images are useful with forms
    > only when the original form is in a paper format, since a sheet of paper is
    > also a container of colors in a plane. To extract string data from an image,
    > a human being must display the image and read the data in it. To extract
    > string data from a container of string data, a computer can read the string
    > data easily. It can also be displayed in a Windows form application, or
    > formatted as an image for viewing by humans.


    Kevin,

    Come on Kevin, it is clear to me that you are a smart guy, think
    outside the box just a little;)

    First off, if you had read the whole thread, you would have seen that
    I have 13 years of professional software development under my belt AND
    that I am a photographer. I know you are smart enough to put together
    these facts to realize that I know the difference between a scanned
    image and manually entered data.

    Second, the data verification is *NOT* going to be done by a computer,
    but a human. I was hoping I did not need to spell it out, but I
    will... Here is the data entry process:

    1: person picks up orders from the PO box
    2: person starts my application
    3: person reads all the data off the order and enters it into my
    Windows Application
    4: person places the order in the scanner
    5: person scans the order form that is saved as a PNG file
    6: person saves the complete order, both text data (from step 3) and
    the binary image (step 5)

    At some point all this is sync with the main data source

    Another human needs to verify that the order was entered correct...

    1: person selects an order and see the entered data and the binary
    image.
    2: person zooms into the area on the binary image of interest and
    verifies that is was is in the entered data.

    I don't see anything all to hard about this other the me learning how
    to get the PNG file from the application to the web site.

    Sam
     
    sam, Dec 14, 2007
    #7
  8. "sam" <> wrote in message
    news:...
    > On Dec 14, 1:23 am, "Scott Roberts" <-webworks-
    > software.com> wrote:
    >> If it were me, I'd just create an asp.net web app with a SQL backend.
    >> Users
    >> can enter orders on a "public" web site up until the event (hosting is
    >> dirt
    >> cheap). Also install the web app on the notebook (I assume it's yours).
    >>
    >> The night of the event, I'd back up the SQL database and restore it to
    >> the
    >> notebook. You can run the web app locally (on the notebook) the night of
    >> the
    >> meeting and continue to enter orders as usual.
    >>
    >> After the event, you can move the database back to the hosted site (if
    >> necessary).

    >
    > Well, the thing is... I don't own a laptop:(
    >
    > The other thing I did not mention is that the orders/sales goes on for
    > about two months. At the weekly meetings the scouts compete against
    > one another to see who brought in the most orders. At the meetings,
    > orders are entered and reports are generated so the scouts know where
    > everyone stands.
    >
    > Besides, I would REALLY like to learn more about web development.
    >
    > Sam


    Ah, I completely misunderstood you.

    You may want to check out Google Gears as well. I've never used it, but it
    looks like it might be up your alley:

    http://code.google.com/apis/gears/
     
    Scott Roberts, Dec 14, 2007
    #8
  9. "sam" <> wrote in message
    news:...

    > There is one day the product is delivered by all the scouts to all the
    > customers. There is someone at a central location that is able to
    > take calls when customers call and complain they did not get the
    > correct items. In the past they had to figure out which order number
    > the person was, find the paper order to determine of there was an
    > error in entering the order or if the customer marked the wrong thing.


    ah, this one is easy ... outsource the call center to India, put people on
    hold for 45 minutes and then drop the call ... it works great for Dell;
    they save money and I live with the problem


    > I am really very open to any approach that is fast and easy. Can you
    > give me a bit more detail on HttpWebRequest? I looked it up and it
    > looks like a generic way to post data to a web server.


    it's a way to make a request over HTTP, with or without data being sent;
    this is an example of what it takes to send data from a WinForm to a web
    server; I'm leaving out what comes back from the server; you can have your
    web page send back whatever makes sense (or nothing at all); the page you
    request just has to handle the data in the Request collection and dump it in
    the SQL store ... simple ...

    string url = "http://www.MyServer.com/DataPost.asp";

    HttpWebRequest req;
    req = (HttpWebRequest)HttpWebRequest.Create(url);

    // no search for proxy; takes forever
    req.Proxy = null;

    // create an arbitrary HTTP request header
    req.AllowAutoRedirect = true;
    req.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR
    1.1.4322)";
    req.Accept = "*/*";
    req.Method = "POST";
    req.ContentType = "application/x-www-form-urlencoded"; // important

    // you have to build up your data string from the WinForm
    string postData = "var1=POSTMEISTER&var2=message";
    byte[] postDataBytes = Encoding.UTF8.GetBytes(postData.ToString());

    req.ContentLength = postDataBytes.Length;

    Stream postDataStream = req.GetRequestStream();
    postDataStream.Write(postDataBytes, 0, postDataBytes.Length);
    postDataStream.Close();

    > Would not a
    > Web Service be easier because it will do all the packaging and
    > unpackaging of the data for me?


    I think it's hard to get simpler than what I posted above ...

    > It is my understanding that
    > WebServices is simply Microsoft's version of SOAP which is simply an
    > interface to make function calls and to interact with classes over
    > HTTP. Am I mistaken?


    not mistaken but over-simplified ... but I am by no means knocking web
    services and if learning to write a web service to do this project is
    valuable payback for taking on the project then by all means do it would be
    my view
     
    Barrie Wilson, Dec 14, 2007
    #9
  10. Hi Sam,

    I think outside the box for a living. Also, I read the whole thread, and I
    know what you are experienced in, as well as what you are NOT experienced
    in.

    I don't have to time to get into a debate about this, but suffice it to say
    I don't believe you've thought the problem through quite thoroughly. As I
    mentioned, there are issues with the size of the data being transmitted, as
    well as the readability of the data, both by computers and by humans. In
    addition, the verification of the form data is not likely to be the last
    usage of it, and again, text/string data is represented in computers by the
    use of strings rather than images for the same sorts of reasons that numeric
    and date-time data is not stored as text.

    You're free, of course, to choose whatever solution you desire. My desire is
    to be helpful by providing what I know, and I have done that. Convincing
    people that I'm right about it is not in my agenda.

    --
    HTH,

    Kevin Spencer
    Chicken Salad Surgeon
    Microsoft MVP

    "sam" <> wrote in message
    news:...
    > On Dec 14, 7:51 am, "Kevin Spencer" <> wrote:
    >> It sounds pretty straightforward, Sam, except for one thing:
    >>
    >> >(I am going to have the order
    >> > forms scanned into the system to ease order verification).

    >>
    >> There's nothing easy about this approach. First, an order form is a
    >> container of string data, such as name, address, etc. An image is a
    >> container of pixel data (colors in a plane). Images are useful with forms
    >> only when the original form is in a paper format, since a sheet of paper
    >> is
    >> also a container of colors in a plane. To extract string data from an
    >> image,
    >> a human being must display the image and read the data in it. To extract
    >> string data from a container of string data, a computer can read the
    >> string
    >> data easily. It can also be displayed in a Windows form application, or
    >> formatted as an image for viewing by humans.

    >
    > Kevin,
    >
    > Come on Kevin, it is clear to me that you are a smart guy, think
    > outside the box just a little;)
    >
    > First off, if you had read the whole thread, you would have seen that
    > I have 13 years of professional software development under my belt AND
    > that I am a photographer. I know you are smart enough to put together
    > these facts to realize that I know the difference between a scanned
    > image and manually entered data.
    >
    > Second, the data verification is *NOT* going to be done by a computer,
    > but a human. I was hoping I did not need to spell it out, but I
    > will... Here is the data entry process:
    >
    > 1: person picks up orders from the PO box
    > 2: person starts my application
    > 3: person reads all the data off the order and enters it into my
    > Windows Application
    > 4: person places the order in the scanner
    > 5: person scans the order form that is saved as a PNG file
    > 6: person saves the complete order, both text data (from step 3) and
    > the binary image (step 5)
    >
    > At some point all this is sync with the main data source
    >
    > Another human needs to verify that the order was entered correct...
    >
    > 1: person selects an order and see the entered data and the binary
    > image.
    > 2: person zooms into the area on the binary image of interest and
    > verifies that is was is in the entered data.
    >
    > I don't see anything all to hard about this other the me learning how
    > to get the PNG file from the application to the web site.
    >
    > Sam
     
    Kevin Spencer, Dec 17, 2007
    #10
  11. Kevin

    I don't think Sam was intending to machine-read the images and extract
    strings; looked like the idea was to be able to display the scanned order
    form and have a human read it and verify it .. personally, I think it's
    overkill either way ... but it's not my project


    "Kevin Spencer" <> wrote in message
    news:e$...
    > Hi Sam,
    >
    > I think outside the box for a living. Also, I read the whole thread, and I
    > know what you are experienced in, as well as what you are NOT experienced
    > in.
    >
    > I don't have to time to get into a debate about this, but suffice it to
    > say I don't believe you've thought the problem through quite thoroughly.
    > As I mentioned, there are issues with the size of the data being
    > transmitted, as well as the readability of the data, both by computers and
    > by humans. In addition, the verification of the form data is not likely to
    > be the last usage of it, and again, text/string data is represented in
    > computers by the use of strings rather than images for the same sorts of
    > reasons that numeric and date-time data is not stored as text.
    >
    > You're free, of course, to choose whatever solution you desire. My desire
    > is to be helpful by providing what I know, and I have done that.
    > Convincing people that I'm right about it is not in my agenda.
    >
    > --
    > HTH,
    >
    > Kevin Spencer
    > Chicken Salad Surgeon
    > Microsoft MVP
    >
    > "sam" <> wrote in message
    > news:...
    >> On Dec 14, 7:51 am, "Kevin Spencer" <> wrote:
    >>> It sounds pretty straightforward, Sam, except for one thing:
    >>>
    >>> >(I am going to have the order
    >>> > forms scanned into the system to ease order verification).
    >>>
    >>> There's nothing easy about this approach. First, an order form is a
    >>> container of string data, such as name, address, etc. An image is a
    >>> container of pixel data (colors in a plane). Images are useful with
    >>> forms
    >>> only when the original form is in a paper format, since a sheet of paper
    >>> is
    >>> also a container of colors in a plane. To extract string data from an
    >>> image,
    >>> a human being must display the image and read the data in it. To extract
    >>> string data from a container of string data, a computer can read the
    >>> string
    >>> data easily. It can also be displayed in a Windows form application, or
    >>> formatted as an image for viewing by humans.

    >>
    >> Kevin,
    >>
    >> Come on Kevin, it is clear to me that you are a smart guy, think
    >> outside the box just a little;)
    >>
    >> First off, if you had read the whole thread, you would have seen that
    >> I have 13 years of professional software development under my belt AND
    >> that I am a photographer. I know you are smart enough to put together
    >> these facts to realize that I know the difference between a scanned
    >> image and manually entered data.
    >>
    >> Second, the data verification is *NOT* going to be done by a computer,
    >> but a human. I was hoping I did not need to spell it out, but I
    >> will... Here is the data entry process:
    >>
    >> 1: person picks up orders from the PO box
    >> 2: person starts my application
    >> 3: person reads all the data off the order and enters it into my
    >> Windows Application
    >> 4: person places the order in the scanner
    >> 5: person scans the order form that is saved as a PNG file
    >> 6: person saves the complete order, both text data (from step 3) and
    >> the binary image (step 5)
    >>
    >> At some point all this is sync with the main data source
    >>
    >> Another human needs to verify that the order was entered correct...
    >>
    >> 1: person selects an order and see the entered data and the binary
    >> image.
    >> 2: person zooms into the area on the binary image of interest and
    >> verifies that is was is in the entered data.
    >>
    >> I don't see anything all to hard about this other the me learning how
    >> to get the PNG file from the application to the web site.
    >>
    >> Sam

    >
    >
     
    Barrie Wilson, Dec 17, 2007
    #11
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Amir
    Replies:
    3
    Views:
    609
  2. news.amnet.net.au
    Replies:
    1
    Views:
    588
    =?UTF-8?b?TMSByrtpZSBUZWNoaWU=?=
    Apr 13, 2004
  3. Stanimir Stamenkov
    Replies:
    2
    Views:
    763
    Stanimir Stamenkov
    Oct 25, 2005
  4. Robert Mark Bram
    Replies:
    0
    Views:
    700
    Robert Mark Bram
    Feb 4, 2007
  5. Kottiyath

    How complex is complex?

    Kottiyath, Mar 18, 2009, in forum: Python
    Replies:
    22
    Views:
    777
Loading...

Share This Page