Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

VB.NET program help

Posted on 2011-03-22
2
Medium Priority
?
293 Views
Last Modified: 2012-05-11
I have an ASP.NET app, I need some help in achieving this particular logic of code.

I have an arraylist which holds a custom object Sample ( SampleTest, Frequency)
Here is some data from the Arraylist

1) Sample A, MWF
2)SampleB, TTH
3)Sample C, Daily
4) SampleD, Weekly
5) Sample e , Monthly

I need to create one or more SampleOrders between two dates supplied. All days are valid working days

So my method has the following

Function CreateOrders (arrayList, StartDate and EndDate) As OrderList
END Function

In the above test data assumimg there are 61 days, with Start date 03/01/2011 and end date 04/30/2011, would result in 61 orders.

But on 03/01 being a Tuesday we would have the Order having the following SAmpleTests
Sample C, Sample B, Sample D, and Sample E (weekly and monthly test always begin on the StartDate entered)

on 3/2 being a Wed We would have an Order with
Sample C, Sample A

3/3 Order
Sample C, Sample B

3/4 Order
Sample C

3/5 Order
Sample C

3/6 Order
Sample C

3/7 Order
Sample C

3/8 Order
Sample C, Sample B, Sample D

4/1
Sample C, Sample E

In the above scenario we would have weekly sample test - Sample D done on 3/1, 3/8, 3/15. 3/22, 3/29 , 4/5, 4/12, 4/19, 4/26.
The monthly would occur on 3/1/ and 4/1

I need to be able to group these tests into Orders, with the Order date the tests need to be conducted based on the fequency.



0
Comment
Question by:countrymeister
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 7

Accepted Solution

by:
foobarr earned 1500 total points
ID: 35189256
Well it sounds as though you will need to do a bit of date calculations

dim tempDate as DateTime
Dim tempList as ArrayList

tempDate = StartDate

While tempDate <= EndDate

tempList.add(tempDate.ToString("yyyy-MM-dd"))

'These will handle Sample A & B scenarios
tempList.add(ArrayListLookUp(tempDate.DayOfWeek.ToString())) 'You will send whatever day of the week it is to handle Sample A & B.  You will need to perhaps parse the string to wahtever you use for your frequency string.


'Handle the Daily one
'Do your ArraylistLookup and reutrn the value and add to your List
tempList.add(ArrayListLookUp("Daily"))

'Handle the Weekly one.  We are substracting the startdate - the current temporary running date and then mod it by 7.   So if remainder is 0 we know its been 7 days
If tempDate.Subtract(StartDate.Now).Days mod 7 = 0 Then
    tempList.add(ArrayListLookup("Weekly"))
End If

'Monthly you did not mention how you are calculating it, but you could use the same logic as below and go.
If tempDate.Substract(StartDate.Now).Days mod 30 = 0 then
   tempList.add(ArrayListLookup("Monthly"))
end if

tempDate.addDays(1)

Next


In your ArrayListLookup, pass in your searching filter, and then in your SampleData arraylist, lookup the filter and return the Sample name

Function ArrayListLookup(filter as string) as string
  dim i as integer
  dim sampleName as string

  for i = 0 to SampleData.count - 1
    if SampleData(i).GetFrequency() = filter then  'Get Frequency could be the name in your Sample Object that will return the frequency
       sampleNAme = SampleData(i).GetSampleValue() 'GetSampleValue could be the name in your Sample Object that will return the sample a -> e.  These are functions (getters) in your object class Sample
        exit for
    end if
  next

return sampleName
end function



sooo...

after all this the expected structured result in the tempList arraylist would be.  (Note I just am writing SAmple A -> E just wanted to show you what your arraylist would look like structurally...)

2011-03-22
Sample A
Sample B
Sampel C
2011-03-23
Sample D
Sample E
2011-03-24
Sample A
Sample B
Sample C
etc.
etc.

0
 
LVL 1

Author Closing Comment

by:countrymeister
ID: 35223214
just got some overview on the code
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Just a quick little trick I learned recently.  Now that I'm using jQuery with abandon in my asp.net applications, I have grown tired of the following syntax:      (CODE) I suppose it just offends my sense of decency to put inline VBScript on a…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…

661 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question