Domino Server.Planner is a capacity planning tool. It is a Notes
Application used to identify benchmarked server configurations that support
specified workload requirements for Domino servers.
Server.Planner provides information in several formats, but with primarily
two viewpoints:
Server configuration recommendations that satisfy server workload
requirements.
Graphical performance analysis and comparisons.
This application is distributed as three Notes database templates. Its
use requires three kinds of Domino Server.Planner databases:
Vendor Database
Analyst Database
Decision Maker Database
DISCLAIMER
: This template is intended solely to provide you with a means for matching your user requirements with performance results generated by hardware vendors. LOTUS DEVELOPMENT CORPORATION MAKES NO WARRANTIES, GUARANTEES OR REPRESENTATIONS, WHETHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY WARRANTIES OF TITLE, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE TEMPLATE OR THE RECOMMENDATIONS PRODUCED. LOTUS WILL NOT BE LIABLE FOR ANY DAMAGES WHATSOEVER IN CONNECTION WITH YOUR USE OF OR INABILITY TO USE THIS TEMPLATE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
This application requires:
Notes 4.6 or later
Windows 95 or Windows NT 3.51 or later
Lotus Components 1.1 or later (for graphical information)
About the Domino Server.Planner Vendor Database
The Server.Planner Vendor Database contains hardware, software, and
benchmark information created by Lotus NotesBench. The database
presents two views:
Machine Identifier
Vendor Data
When you select the Machine Identifier view, the view pane presents
a list of Machine IDs, including a summary of the configuration of
that machine. You can view any complete Machine Identifier form by
opening it.
When you select the Vendor Data view, the view pane presents a list
of Machine IDs followed by a list of the workloads that were
performed on these systems. You can view any workload data set by
opening it.
Each view has an action button bar for ease of use. You can also
perform any of these actions from the menu bar.
You cannot alter the data in any Machine Identifier form, or Vendor
Data form, once it has been certified.
For more detailed information about this application, choose
- Using
This Database
O=Lotus Notes
O=Lotus Notes
PURSAFO
|.:#U
O=Lotus Notes
CN=Lotus Notes Template Development/O=Lotus Notes
PURSAFO
Fde!f^^
qD:~<
$Info
$Body
'++LotusScript Development Environment:2:5:(Options):0:66
'++LotusScript Development Environment:2:5:(Forward):0:1
Declare Sub Entering(Source As Field)
Declare Sub Exiting(Source As Field)
'++LotusScript Development Environment:2:5:(Declarations):0:2
'++LotusScript Development Environment:2:2:BindEvents:1:129
Private Sub BindEvents(Byval Objectname_ As String)
Static Source As FIELD
Set Source = Bind(Objectname_)
On Event Entering From Source Call Entering
On Event Exiting From Source Call Exiting
End Sub
'++LotusScript Development Environment:2:2:Entering:1:12
If sVendorName = sSavedMachines( k, 2) Then ' check machine name
' verify that machine name and vendor name are the same
bAlreadyFound = True
End If
End If
Next k
' make sure the data has a signature attached or if an estimated record
vCertifyCheck = ThisDoc.Document.CertifyCheckOn
vIsSignedField = ThisDoc.Document.IsSignedField
vEstimated = ThisDoc.Document.Estimated
If vCertifyCheck( 0 ) = "1" Then
If ( vIsSignedField( 0 ) = "0" And vEstimated( 0 ) <> "Yes" ) Or ( vIsSignedField( 0 ) = "1" And vEstimated( 0 ) ="Yes" And sPerformanceEstimatedRecords = "No" ) Then ' user selects no, don't include estimated records
Set SearchCollection = ThisDB.Search( SearchFormula$, DateTime, 0 )
' first insert data from current database
If SearchCollection.Count > 0 Then
For i = 1 To SearchCollection.Count
Set SearchDoc = SearchCollection.GetNthDocument( i )
' make sure the data has a signature attached
vCertifyCheck = ThisDoc.Document.CertifyCheckOn
Dim vIsSignedField As Variant
Dim vEstimated As Variant
vIsSignedField = SearchDoc.IsSignedField
vEstimated = SearchDoc.IsSignedField
'If vCertifyCheck( 0 ) = "1" And SearchDoc.IsSigned Then
If vCertifyCheck( 0 ) = "1" Then
If ( vIsSignedField( 0 ) = "1" And vEstimated( 0 ) <> "Yes" ) Or ( vIsSignedField( 0 ) = "0" And vEstimated( 0 ) ="Yes" And sPerformanceEstimatedRecords = "Yes") Then ' option not to include estimated records
DataUNumberUsers1Number of spokes if script is Replication Hub or Mail Routing Hub. Number of Users for all other workloads.
DataUNotesMark1Results of NotesBench workload.
DataUResponseTime1_1
0S0E
DataUResponseTime1Results of NotesBench workload.
DataUScript1
Replication Hub
DataUScript1
Mail Routing Hubu
4S6S7S11S
Additional Information for Server Tasks
Actions/Minute:
Bytes/Minute:
DataUOther11_1
0S0E
DataUOther11If script is Replication Hub, amount of Replications performed per hour. If script is Mail Routing Hub, amount of mail routed per hour.
DataUOther21_1
0S0E
DataUOther21If script is Mail Routing Hub, amount of data, expressed in megabytes, moved per hour.
DataUScript1
Web Buyer
Additional Information form Web Buyer
Total Orders Created:
TotOrdersCreatedFor the Web Buyer script, the total number of orders created for the duration of the test's execution.
Total Dollar Value:
TotDollarValueFor the Web Buyer script, the total dollar value generated for the duration of the script's execution.
TotOrdersLotsFor the Web Buyer script, the total orders lots generated for the duration of the script's execution.
Total Orders Lost:
DataUScript1
Web Walkeru
Additional Information for Web Walker
Total Hits:
TotHitsFor the Web Walker, the total hits experienced for the duration of the script's execution.
Average KBytes/Hit:
AvgBytesHit_1
0S0E
AvgBytesHitFor the Web Walker, the average number of bytes per hit, for the duration of the script's execution.
TotBytesXferredFor the Web Walker, the total number of bytes transferred, for the duration of the script's execution.
Total Bytes Transferred:
AvgHitsMin_1
0S0E
AvgHitsMinFor the Web Walker, the average number of hits per minute, for the duration of the script's execution.
Average Hits/Minute:
Probe Results:
Response Time (seconds):
Average
Minimum
Maximum
DataUAverage_1
DataUAverage_1
DataUAverage_1
1S5S6S11S12S13S14S17S18S24SDataUAverageAverage time required to open & close a database during test run.
DataUMinimum_1
DataUMinimum_1
DataUMinimum_1
1S5S6S11S12S13S14S17S18S24SDataUMinimumMinimum time required to open & close a database during test run.
DataUMaximum_1
DataUMaximum_1
DataUMaximum_1
1S5S6S11S12S13S14S17S18S24SDataUMaximumMaximum time required to open & close a database during test run.
Distribution (seconds):
Time
#/Responses
%/Total (Discrete)
%/Total (Cumulative)
Fast ( < 1):
DataUFastThe number of Probe responses that were less than 1 second.
total
DataUFast
DataUMedium
DataUSlow
DataUMore
1S2S
DataUFast
DataUFast
DataUFast
total
0R1S3S4S5S2E6S7S8S10S14S2E15SDataUPercentDFastFrom the total number of Probe responses, the percentage of responses which fall within the range of less than 1 second.
total
DataUFast
DataUMedium
DataUSlow
DataUMore
1S2S
DataUFast
DataUFast
DataUFast
total
0R1S3S4S5S2E6S7S8S10S14S2E15SDataUPercentFastThe percentage of Probe responses that fall within the Fast range.
Medium (1 - 3):
DataUMediumThe number of Probe responses that were within the range of 1 - 3 seconds.
total
DataUFast
DataUMedium
DataUSlow
DataUMore
1S2S
DataUMedium
DataUMedium
DataUMedium
total
0R1S3S4S5S2E6S7S8S10S14S2E15SDataUPercentDMediumFrom the total number of Probe responses, the percentage of responses which fall within the range of greater than 1 and up to 3 seconds.
total
DataUFast
DataUMedium
DataUSlow
DataUMore
1S2S
DataUMedium
DataUMedium
DataUFast
DataUPercentFast
DataUMedium
total
DataUPercentFast
0R1S3S4S5S2E6S7S8S10RS5E11S13S14S15S16S2E18S21RS8E26S2E27S30SDataUPercentMediumThe percentage of Probe responses that fall within the Fast and Medium range.
Slow (3.1 - 5):
DataUSlowThe number of Probe responses between 3 and 5 seconds.
total
DataUFast
DataUMedium
DataUSlow
DataUMore
1S2S
DataUSlow
DataUSlow
DataUSlow
total
0R1S3S4S5S2E6S7S8S10S14S2E15SDataUPercentDSlowFrom the total number of Probe responses, the percentage of responses which fall within the range of greater than 3 and less than 5 seconds.
total
DataUFast
DataUMedium
DataUSlow
DataUMore
1S2S
previous
DataUFast
DataUMedium
total
0R1S6S8S9S
DataUSlow
DataUSlow
DataUPercentMedium
DataUSlow
total
previous
0R1S3S4S5S6S7S8S10S12S17S2E18S19S21S
DataUPercentSlowThe percentage of responses that fall with the Fast, Medium and Slow ranges.
Outside Range ( > 5):
DataUMoreThe number of Probe responses greater than 5 seconds.
total
DataUFast
DataUMedium
DataUSlow
DataUMore
1S2S
DataUMore
DataUMore
DataUMore
total
0R1S3S4S5S2E6S7S8S10S14S2E15SDataUPercentDMoreFrom the total number of Probe responses, the percentage of responses which fall within the range of greater than 5 seconds.
total
DataUFast
DataUMedium
DataUSlow
DataUMore
1S2S
previous
DataUFast
DataUMedium
DataUSlow
total
0R1S2S6S8S10S11S
DataUMore
DataUMore
DataUMore
total
previous
0R1S3S4S5S6S7S8S10S16S2E17S18S
DataUPercentMoreThe percentage of responses that fall with the Fast, Medium, Slow and Very Slow ranges.
Server Comparison Graphs
DataPerformChartArea used to display Performance Graph.
FormNewLocation
'++LotusScript Development Environment:2:5:(Options):0:74
'Use "vendordata"
'++LotusScript Development Environment:2:5:(Forward):0:1
Declare Sub Click( Source As Button )
Declare Function FormulateQuery2( ThisDoc As NotesUIDocument ) As String
'++LotusScript Development Environment:2:5:(Declarations):0:2
'++LotusScript Development Environment:2:2:BindEvents:1:129
Private Sub BindEvents(Byval Objectname_ As String)
Static Source As BUTTON
Set Source = Bind(Objectname_)
On Event Click From Source Call Click
End Sub
'++LotusScript Development Environment:2:2:Click:3:12
'%INCLUDE "chconsts2.txt"
%INCLUDE "chconsts.txt"
Sub Click( Source As Button )
Call AMSV( )
End Sub
'++LotusScript Development Environment:2:1:FormulateQuery2:1:8
Function FormulateQuery2( ThisDoc As NotesUIDocument ) As String
Messagebox "Lotus Components Must Be Correctly Installed to Proceed", MB_ICONSTOP, "Graph Performance Information"
Elseif Err = 4412 Then
Messagebox "The Graphical Test Results and Miscellaneous Sections must be expanded to insert the graphical information. Currently, one or both of the sections are collapsed.", MB_ICONSTOP, "Graph Performance Information"
End If
PerformComponentsSetup=False
Exit Function
End Function
FormNewLocation
Graph Distribution'++LotusScript Development Environment:2:5:(Options):0:66
'++LotusScript Development Environment:2:5:(Forward):0:1
Declare Sub Click( Source As Button )
Declare Function DistributionComponentsSetup( ) As Integer
Declare Function PerformComponentsSetup( ) As Integer
'++LotusScript Development Environment:2:5:(Declarations):0:2
'++LotusScript Development Environment:2:2:BindEvents:1:129
Private Sub BindEvents(Byval Objectname_ As String)
Static Source As BUTTON
Set Source = Bind(Objectname_)
On Event Click From Source Call Click
End Sub
'++LotusScript Development Environment:2:2:Click:3:12
'%INCLUDE "chconsts2.txt"
%INCLUDE "chconsts.txt"
Sub Click( Source As Button )
Dim Workspace As New NotesUIWorkspace
Dim ThisDoc As NotesUIDocument
Dim Session As New NotesSession
Dim ThisDB As NotesDatabase
Dim DateTime As New NotesDateTime( "1/1/96" )
Dim SearchCollection As NotesDocumentCollection
Dim SearchDoc As NotesDocument
Dim iEntryCount As Integer
Set ThisDoc = Workspace.CurrentDocument
Set ThisDB = Session.CurrentDatabase
ThisDoc.EditMode = True
Call ThisDoc.ExpandAllSections ' make sure user doesn't prevent graph from displaying
Messagebox "Lotus Components Must Be Correctly Installed to Proceed", MB_ICONSTOP, "Graph Distribution Information"
Elseif Err = 4412 Then
Messagebox "The Graphical Test Results and Miscellaneous Sections must be expanded to insert the graphical information. Currently, one or both of the sections are collapsed.", MB_ICONSTOP, "Graph Distribution Information"
End If
PerformComponentsSetup=False
Exit Function
End Function
FormNewLocation
Help^
DSPUG.NSF
Table of Contents
4S10S12S13S
D4D44848
(0(0$
p8@8@8
6@3@303P8
0`8`8
p9p9 909
P9P9@9$:
p p |.
0!4/
!P"`/
!p#80
"0#$2
#P#t2
#0$d3
P$P$84
$P&,5
%0'T6
p&P*D7
'p(h9
0(P(0:
*0+\>
p,p-x@
</</HB
9P4P4
\2\2PC
5|6xD
0909PC
p9$:LD
;hOb6
<hP69
D<tQD
0+X/$
^p3K</-
K</,P4}
K</,P4}
K</,,5}
K</,,5}
0,\5J
6K</,,5}
^03K\2,L6J<6
^|6K</-
6K03P
6K03P
6K03,
6K03,
K</,,5}
K</,,5}
^X74u
K</,,5}
6Q<7K</,,5}
6Q<7K</,,5}
6Q<7K</,,5}
7[p7[
7^</#
[p7Gp7
^P8}XKJ@8
J`8Jp8
8^</^p3#
9+X/$
8,P4}
9}hM}
8,P4}
9Q4:}
6QX:~
6Q|:}
6Q|:K
8,,5}
8,,5}
8,,5}
8,,5}
N4;QD;
N4;Q|:}XQ
N4;OP;Q\;}
N4;OP;Qh;
N4;OP;O
Nt;QD;
Nt;Q|:}
Nt;OP;Q\;}
Nt;OP;Qh;
Nt;OP;O
;Q|:}
;OP;Q\;}
;OP;Qh;
;OP;O
;Q|:}
;OP;Q\;}
;OP;Qh;
;OP;O
;OP;Q\;}
;OP;Qh;
;OP;Q\;}
;OP;Qh;
<OP;Q\;}
<OP;Qh;
N(<Q\;}
N(<Qh;
N(<Q8<~
N(<QD<
Nx<OP;O
<Q8<~
<Q8<~
<Q8<~
<Q8<~
8,,5}
7|=t6t6
p5p5d2 8
;|9|9
<`<p<
P<\>\>
< <t
8"P.
x!x%</
"X"$0
8"8'L0
"8#41
"x#x1
X$8%x3
8&8)86
X&8(d6
&x' 7
'X(h8
(x(D9
8(x*x9
(x+8:
X)8*p;
x*8+H=
8+x,@>
,x-\?
,8.p@
-X.|A
7 80J
8T94D
;$P69
D:<Pd8
x;DQD
/KD/-
/,d4#
4}dE#
4}dE#
5Jp5Jd2
5}8H#}`H
5}hH#}`H
5}$I#
5}<I#
5}XI#
5}pI#
/-X7#
/^H7#
^@8K08-
^`8KP8-
K@8.@4
[t6K@8,
4}dE#
4}dE#
8K@8,
8}<M}`M
Nt6Q<9}
8QH9}
8Qd9}LNJT9
6K@8,
9K@8,
:O :Q,:
:O8:OD:TP:
:O8:Q,:
Nh:Qx:
:OD:TP:
:OD:TP:
:OD:TP:
:OD:TP:
;Q$;~
8OP;P
N\;Ql;~(
N\;Qx;
N\;OD:TP:
:OD:TP:
;Ql;~h
;Ql;~
<K@8,
^0<K <-
^P<K@<-
K0<.@4
[D=K0<,
8}XT}
4}xT#
4}xT#
[X=K0<,
NX=Q09
ND=Q<9}XT
NX=QH9}XT
NX=Qd9}LNJd=
NX=Qp9
6K0<,
9K0<,
F#}DU
=NX=O
=O :Q,:
=O8:OD:TP:
=O8:Q,:
=NX=O
:OD:TP:
=NX=O
:OD:TP:
=NX=O
:OD:TP:
=NX=O
:OD:TP:
=NX=O
;Q$;~
=NX=O
>NX=O
>NX=OP;P
>Ql;~(
>OD:TP:
^,>NX=O
^<>NX=P
:OD:TP:
;Ql;~h
;Ql;~
^L>NX=O
NL>Ql;~h
;Ql;~
<K0<,
O=Lotus Notes
O=Lotus Notes
PURSAFO
|.:#U
O=Lotus Notes
CN=Lotus Notes Template Development/O=Lotus Notes
PURSAFO
/boT#
DataPercentLessThan1
DataPercentOnetoTwo
DataPercentThreetoFive
DataUDistribution1
DataUDistribution2
DataUDistribution4
DataUDistribution5
DataDatePerformed
DataNumberUsers1
DataNumberUsers2
DataNumberUsers3
DataNumberUsers4
DataNumberUsers5
DataLessThan1
DataOnetoTwo
DataThreetoFive
DataUNumberUsers2
DataUNotesMark2
DataUResponseTime2
DataUOther12
DataUOther22
DataUNumberUsers3
DataUDistribution3
DataUNotesMark3
DataUResponseTime3
DataUOther13
DataUOther23
DataUNumberUsers4
DataUNotesMark4
DataUResponseTime4
DataUOther14
DataUOther24
DataUNumberUsers5
DataUNotesMark5
DataUResponseTime5
DataUOther15
DataUOther25
DataULessThan1
DataUOnetoTwo
DataUThreetoFive
DataUSlow1
DataUPercentSlow1
DataUSlow2
DataUPercentSlow2
DataUSlow3
DataUPercentSlow3
DataUSlow4
DataUPercentSlow4
DataUModificationDate_1
$SCRIPTOBJ_12
$$FormSigned_1
$FormSigned_1_O
$$DataUServerID_1
$DataUServerID_1_O
$$DataUDatePerformed_1
$DataUDatePerformed_1_O
$$DataUScript1_1
$DataUScript1_1_O
$$DataUNumberUsers1_1
$DataUNumberUsers1_1_O
$$DataUNotesMark1_1
$DataUNotesMark1_1_O
$$TotOrdersCreated_1
$TotOrdersCreated_1_O
$$TotDollarValue_1
$TotDollarValue_1_O
$$TotOrdersLots_1
$TotOrdersLots_1_O
$$TotHits_1
$TotHits_1_O
$$TotBytesXferred_1
$TotBytesXferred_1_O
$$DataUFast_1
$DataUFast_1_O
$$DataUMedium_1
$DataUMedium_1_O
$$DataUSlow_1
$DataUSlow_1_O
$$DataUMore_1
$DataUMore_1_O
DataUDatePerformed_1
DataUNumberUsers1_1
DataUNotesMark1_1
TotOrdersCreated_1
TotDollarValue_1
TotOrdersLots_1
TotHits_1
TotBytesXferred_1
DataUFast_1
DataUPercentDFast_1
DataUPercentFast_1
DataUMedium_1
DataUPercentDMedium_1
DataUPercentMedium_1
DataUSlow_1
DataUPercentDSlow_1
DataUPercentSlow_1
DataUMore_1
DataUPercentDMore_1
DataUPercentMore_1
$TITLE
$Info
$WindowTitle
$Script
$$Script_O
$$ScriptName
$$FormScript
$$$FormScript_O
$$DataUAverage_1
$DataUAverage_1_O
$$DataUMinimum_1
$DataUMinimum_1_O
$$DataUMaximum_1
$DataUMaximum_1_O
$$DataUOther21_1
$DataUOther21_1_O
$$DataUOther11_1
$DataUOther11_1_O
$$AvgBytesHit_1
$AvgBytesHit_1_O
$$DataCalibration_1
$DataCalibration_1_O
$$DataGenerated
$DataGenerated_O
$$DataGenerated_1
$DataGenerated_1_O
$$DataMachineID_1
$DataMachineID_1_O
$$EstimatedRecords
$EstimatedRecords_O
$$FormSigned
$FormSigned_O
$$DataMachineID
$DataMachineID_O
$$DataUServerID
$DataUServerID_O
$$DataUDatePerformed
$DataUDatePerformed_O
$$DataUScript1
$DataUScript1_O
$$DataUNumberUsers1
$DataUNumberUsers1_O
$$DataUNotesMark1
$DataUNotesMark1_O
$$DataUResponseTime1
$DataUResponseTime1_O
$$TotOrdersCreated
$TotOrdersCreated_O
$$TotDollarValue
$TotDollarValue_O
$$TotOrdersLots
$TotOrdersLots_O
$$TotHits
$TotHits_O
$$AvgBytesHit
$AvgBytesHit_O
$$TotBytesXferred
$TotBytesXferred_O
$$DataUAverage
$DataUAverage_O
$$DataUMinimum
$DataUMinimum_O
$$DataUMaximum
$DataUMaximum_O
$$DataUFast
$DataUFast_O
$$DataUMedium
$DataUMedium_O
$$DataUSlow
$DataUSlow_O
$$DataUMore
$DataUMore_O
DocLinkFlag
EditFieldFlag
DataUAverage_1
DataUMinimum_1
DataUMaximum_1
DataUOther21_1
DataUOther11_1
AvgBytesHit_1
AvgHitsMin_1
DataUResponseTime1_1
DataUDatePerformed
DurationTest
DataUNumberUsers1
DataUNotesMark1
DataUResponseTime1
DataUOther11
DataUOther21
TotOrdersCreated
TotDollarValue
TotOrdersLots
TotHits
AvgBytesHit
TotBytesXferred
AvgHitsMin
DataUAverage
DataUMinimum
DataUMaximum
DataUFast
DataUPercentDFast
DataUPercentFast
DataUMedium
DataUPercentDMedium
DataUPercentMedium
DataUSlow
DataUPercentDSlow
DataUPercentSlow
DataUMore
DataUPercentDMore
DataUPercentMore
DataUCreationDate
DataUModificationDate
$Body
$ACTIONS
$SCRIPTOBJ_6
$SCRIPTOBJ_7
$SCRIPTOBJ_8
$SCRIPTOBJ_9
'++LotusScript Development Environment:2:5:(Options):0:66
Option Public
'++LotusScript Development Environment:2:5:(Forward):0:1
Declare Sub Initialize
'++LotusScript Development Environment:2:5:(Declarations):0:2
'++LotusScript Development Environment:2:2:Initialize:1:10
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim dc As NotesDocumentCollection
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Set view = db.GetView("Estimated")
Set doc = view.GetFirstDocument
While Not(doc Is Nothing) ' will remove all documents found under this view
Call doc.Remove(True)
Set view = db.GetView("Estimated")
Set doc = view.GetFirstDocument ' as a deletion is in progress, always haves to change first document
' Set doc = view.GetNextDocument(doc)
Wend
End Sub
O=Lotus Notes
O=Lotus Notes
PURSAFO
|.:#U
O=Lotus Notes
CN=Lotus Notes Template Development/O=Lotus Notes
PURSAFO
$TITLE
$AssistType
$AssistLastRun
$AssistDocCount
$AssistFlags
$AssistTrigger
$AssistInfo
$AssistQuery
$AssistAction
$AssistAction_Ex
Started running agent 'Create Estimated Documents' on 11/25/98 06:04:30 PM
Ran LotusScript code
Done running agent 'Create Estimated Documents' on 11/25/98 06:04:43 PM
Messagebox ("calculated intervalrange " + Str( intervalrange ) + " docs to be created between " + Str( displayint ) + " and " + Str( tempupperbound ) )
Else
Messagebox ("calculated intervalrange " + Str( intervalrange ) + " docs to be created between " + Str( displayint ) + " and " + Str( tempupperbound ) )
End If
End If
' now detect if the j + 1 record has a lower response time value than the j record
If upperavgamt < loweravgamt Then
If debugmessage = True Then
Messagebox("detected upperavgamt < loweravgamt" )
End If
' for now, skip creating records CHANGED - > will create records
' if this changes, need to reset all loweravgamt values to be upperavgamt values ***
If intervalrange > 1 Then
loweravgamt = upperavgamt
lowerfastamt = upperfastamt
lowermediumamt = uppermediumamt
lowerslowamt = upperslowamt
lowermediumamt = upperslowamt
For k = 1 To ( intervalrange - 1) ' create 1 less than the number of intervals
Call GenEstimateDoc ()
Next k
Else
If debugmessage = True Then
' may want to come back here and find out why
Messagebox (" upperavgamt < loweravgamt & i =0 or 1")
End If
End If
Else
If intervalrange = 0 Then
If debugmessage = True Then
Messagebox (" intervalaverage = 0, not creating document")
End If
Else
If intervalrange > 1 Then
For k = 1 To ( intervalrange - 1) ' create 1 less than the number of intervals
Call GenEstimateDoc ()
Next k
End If
End If
End If
Else
If templowerbound = 0 Then
Messagebox("Spread between records too much to calculate estimation records for: " + vTempMachineID( 0 ) + " " + Str( displayint ) + " " + Str( tempupperbound ) )
Else
Messagebox("Spread between records too much to calculate estimation records for: " + vTempMachineID( 0 ) + " " + Str( displayint ) + " " + Str( tempupperbound ) )
End If
' can keep processing in case there are more records
End If
Next j
End Sub
'++LotusScript Development Environment:2:2:GenEstimateDoc:1:8
Sub GenEstimateDoc ()
Dim i As Integer
Dim dt As New NotesDateTime("01/01/90")
Dim itempusercount As Integer
Dim iremainder As Integer
itempusercount = templowerbound + ( k * incrementamount)
iremainder = itempusercount Mod roundupto
itempusercount = itempusercount - iremainder ' get rid of any trailing amount