Regarding logical error
Dear sir,
following is the question of the assignment provided to me from my college.i hav developed the program for the same question. My problem is that i am getting exact o/p as mentioned in the examples provided with question.But my lecturer is saying that it is not providing the exact o/p according to i/p's
int process[] = {
1, 2, 3, 4, 5
int arrival[] = {
0, 6, 8, 9, 12
int burst[] = {
6, 5, 3, 1, 2
}; The expected output should be : {0, 0, 4, 2, 3 }
The waiting time should not be negative.
But my program is providing the o/p {0,4,-3,-1,3}
Please help me for it. Please see me program below the question and guide me what i should do for it.
Question:Write a program to list the waiting time of the processes based on the arrival time and the burst time under non preemptive scheduling. In the Non preemptive Scheduling,the current process keeps the CPU until it releases the CPU by terminating. the operating system never initiates a context switch from a running process to another process.
The Prototype of the function is_
int[] getWaitingList(int[] process,int[] arrival,int[] burst)
where process represents list of processes,arrival represents the arrival time of the processes and burst represents the execution time of the processes.
the function returns the waiting time of the processes based on the arrival and burst time.
Constraints_
the arrival time of the first process should be started with 0, it never contain duplicate, the current process arrival time should be greater than previous process else return{0}.
the burst time should be greater than 0 and less than 10 else return{0}.
Example 1:_
Input
int process[] = {1, 2, 3, 4};
int arrival[] = {0, 2, 4, 5};
int burst[] = {7, 4, 1, 4};
Output: The function getWaitingList() returns {0,6,3,7}
Explaination:Process 1 3 2 4
0 7 8 12 16 starting time of process
The waiting time should be : 0,6,3,7
Example 2:_
Input
int process[] = {1, 2, 3};
int arrival[] = {0, 4, 8};
int burst[] = {6, 2, 1};
Output: The function getWaitingList() returns {0,2,0}
Example 3:_
Input int process[] = {1, 2, 3, 4};
int arrival[] = {2, 0, 4, 5};
int burst[] = {7, 4, 1, 4};
Output: The function getWaitingList() returns {0}
Program for the above Question:_
public class NonPreemptiveScheduling
public int[] getWaitingList(int[] process, int[] arrival, int[] burst)
{ int n=process.length;
int s=arrival[0]+burst[0];int t,i,j;
if(arrival[0]!=0)
return new int[]{0};
for(i=0;i<n-1;i++)
if(arrival[i+1]>arrival)
else
return new int[]{0};
for(i=0;i<n;i++)
if(burst[i]>0 && burst[i]<10)
else
return new int[]{0};
int[] wait1=new int[n];
int[] wait=new int[n];
int[] tot=new int[n];
int[] ar1=new int[n];
int[] bu1=new int[n];
int[] pro=new int[n];
wait[0]=0;
for(i=0;i<n;i++)
tot[i]=arrival[i]+burst[i];
for(i=0;i<n;i++)
ar1[i]=arrival[i];
for(i=0;i<n;i++)
bu1[i]=burst[i];
for(i=0;i<n;i++)
pro[i]=process[i];
for(i=1;i<n;i++)
for(j=i;j<n;j++)
if(tot[i]>tot[j])
t=tot[j];
tot[j]=tot[i];
tot[i]=t;
t=pro[j];
pro[j]=pro[i];
pro[i]=t;
t=ar1[j];
ar1[j]=ar1[i];
ar1[i]=t;
t=bu1[j];
bu1[j]=bu1[i];
bu1[i]=t;
for(i=1;i<n;i++)
wait[i]=s-ar1[i];
s=s+bu1[i];
for(i=0;i<n;i++)
wait1[pro[i]-1]=wait[i];
return wait1;
public static void main(String args[])
//testcase 1:
try
int process[] = {1, 2, 3, 4};
int arrival[] = {0, 2, 4, 5};
int burst[] = {7, 4, 1, 4};
int[] output = new NonPreemptiveScheduling().getWaitingList(process, arrival, burst);
if(output!=null && output.length>0)
for (int i = 0; i < output.length; i++)
System.out.print(output[i]+", ");
System.out.println();
catch (Exception e)
e.printStackTrace();
//testcase 2:
try
int process[] = {1, 2, 3};
int arrival[] = {0, 4, 8};
int burst[] = {6, 2, 1};
int[] output = new NonPreemptiveScheduling().getWaitingList(process, arrival, burst);
if(output!=null && output.length>0)
for (int i = 0; i < output.length; i++)
System.out.print(output[i]+", ");
System.out.println();
catch (Exception e)
e.printStackTrace();
//testcase 3:
try
int process[] = {1, 2, 3, 4};
int arrival[] = {2, 0, 4, 5};
int burst[] = {7, 4, 1, 4};
int[] output = new NonPreemptiveScheduling().getWaitingList(process, arrival, burst);
if(output!=null && output.length>0)
for (int i = 0; i < output.length; i++)
System.out.print(output[i]+", ");
catch (Exception e)
e.printStackTrace();
Similar Messages
-
PLEASE HELP ME TO FIND THE SOLUTION REGARDING "LOGICAL SYSTEM CHANGED"
HAI EVERYBODY,
PLEASE HELP ME TO FIND THE SOLUTION REGARDING "LOGICAL SYSTEM CHANGED" during the material master replication by using middleware parameters.
step1 : i have taken SRM client 810 and named it as CHINNISRM
step2 : i have taken r3 client 810 and named it as CHINNIR3
step3: During material master replication i maintained tables like crmconsum,crmrfcpar,crmparoltp in r3 and smofparsfa in srm client and filtered the objects and loaded the objects through r3ac3,r3ac1,r3as.
step4 : And later i have checked in r3 queues to activate the objects,but i have seen a message like "LOGICAL SYSTEM CHANGED:SEE 588701".according to the oss instructions i have checked in CRMPRLS table in se16 in R3 .there i found out there is one logical client named with T90CLNT810.
oss :588701
Solution
There are different cases in which different forms of processing are
required or where several options exist:
- The logical system name of an R/3 Backend client was changed in
current operation. In this case, the data hangs in the outbound
queues of the R/3 Backend system as specified under point 1 of
the symptom. In this case, the logical system name must be
changed back to the original value. Then the outbound queues
can be reactivated. If no data was transferred to the EBP/CRM
server before the change, also a correctioin of the check table
is possible.
- The same logical system name was used again in a new client of
an R/3 Backend system that was linked to the EBP/CRM server. In
this case, the data is in the inbound queue of the EBP/CRM
server with the exception GUID_FOR_LOGSYS_CHANGED. In this
case, the queue entries which have status SYSFAIL must be rejected, however, not the entire queues. If the new client of the R/3 Backend system you have linked has exactly the same
data as the old client and if it is meant to replace the old
client (that is, this was deactivated), also a correction of
the check tables is possible. In this case, the inbound queues
can be reactivated after the correction.
oss:765018
1. If the situation in your system corresponds to the situation described
under "Reason and Prerequisites" and if symptom 1 occurs, you can
delete the table entry from table CRMPRLS table (there is just one
entry). Since there is no maintenance dialog for this table and you
cannot maintain it using transaction SE16, you must use a report to
delete it. This report is attached to this note as correction
instructions.
Create the report ZZ_DELETE_CRMPRLS in your system and copy the source
code from the correction instructions. You cannot implement this
source code using transaction SNOTE.
You can use the report in every plug-in or plug-in basis system, even
if it is not specified in the validity section.
After you have run the report, you can trigger existing queues again
in transaction SMQ1.
2. If the situation in your system corresponds to the situation described
under "Reason and prerequisite" and if symptom 2 occurs, you can
delete the entry from table CRMMLSGUID (there is just one entry).
Since there is no maintenance entry for this table and you cannot
maintain it using transaction SE16, you must use a report to delete
it. This report is attached to this note as correction instructions.
If they do not yet exist, add the following messages to message class SMOF in your logon language:
Message Message short text
303 User &1 is not allowed to change table &2.
304 User &1 IS not allowed to display table &2.
305 Logical system &1 was not found in table &2.
306 System error! The current client was not
found in table T000.
Create the report ZZ_DELETE_CRMMLSGUID in your system and copy the
source code from the correction instructions. You cannot implement
this source code using transaction SNOTE.
You can use the report for every release of the CRM system, even if it
is not specified in the validity section. The only exceptions are CRM
releases with Support Package versions that are too low such as CRM
Release 3.0 with Support Package 12.
After you have run the report, you can trigger existing queues again
in transaction SMQ1 of the R/3 back-end system or transaction SMQ2 of
the CRM system.
so what should i do to do the replication.please suggest me .untill and unless i solve my problem i cant move to the further activity.i hope you people can solve my problem.thanks in advance.
thanks and best regards,
n.chakradharHi chakradhar,
Did you find a solution to your issue? We are facing a similar issue and looking to figure out how this can be resolved.
BR// 420 -
Clarification Regarding Logical System Names
HI all,
I read the blogs regarding Logical System Name, even I am having the some problems in my system.
For PI system client is 100.
R/3 System Client is 100 is created.
IN PI when I checked the sale->basic setting-> LOgical Settings-> Assign Logical Systems
I found there is only one client 100, and it is having the same logical system name as 'PICLNT100'.
In SLD one Business System is created for Client 100 and having the Logical System Name is 'PICLNT100'.
When I checking in the R/3 system that logical system Name ('PICLNT100') is not there and for r/3 client 100 having the different logical system name.
IN ID when I found the Goto ID->File Buinsess system and Menu ->Services->Adapter Specific Identifiers->Logical Ssytem,
It is different from the SLD logical System Name.
How Can I know in PI, that Logical System is belongs to r/3 or PI client 100,
when I running the sceanrio it is giving error as ATTRIBUTE_INV_SND_SERV while doing the file to Idoc scenario.
How I have to maintain the logical system names in this case?
please help me in this.
Regards,
Sreehi.
each r3 system has his own SLN (PI,BI,ECC,etc). this name identify each R3 sytem.
http://help.sap.com/saphelp_nw04/helpdata/en/78/217dc151ce11d189570000e829fbbd/frameset.htm
IN ID when I found the Goto ID->File Buinsess system and Menu ->Services->Adapter Specific Identifiers->Logical Ssytem,
to export data of your R3 system to SLD, just do it from TCODE RZ70 in your r3 system, not PI.
once you configure it all data from r3 system is exported to SLD.
if the SLN does not match in Adapter Specific Identifiers->Logical Ssytem, edit the Bussines System (press in the little pencil) go to Adapter Specific Identifiers->Logical Ssytem and prees in the little hand icon. in the SLN in not refresh, go to menu enviroment--> CLEAR SLD DELTA CACHE. and repeat the steps before.
each time you send data to an R3 system and the sender system is a legacy. in your receiver communication channel>header mapping>sender system--> select the PI Bussines system and try again.
hope its helps
Rodrigo
PD: rewards points if useful -
Identifying syntax and logical errors
Hey guys,
I'm new to java and I can't figure out this problem as I can't make JDK work with comand prompt for some reason and when trying to write the java in a web page it won't work.
Can anyone tell me what the three syntax errors and one logical error in the following code is?
public class Add
public static void main(String[] args)
double weight1 = 85.5
double weight2 = 92.3
double averWeight = weight1 + weight2 / 2;
System.out.println("Average is " + aver);
Any help would be very much appreciated.Ok. I'm new to Java. Thanks to the both of you for your help.You're welcome of course; here's a tip: type in these little exercises
and try to compile them; carefully read what the compiler has to say
about the possible errors. Note that the compiler is totally blind to
most "logical errors".
kind regards,
Jos -
Too many logical errors (in terms of business processes); maximum was 100
hi friends !
I'm using the direct input program RMDATIND for uploading the material master data. and i'm facing the error:
"Too many logical errors (in terms of business processes); maximum was 100"
thanks and regards,
sachin soniHi,
If you checked in standard program,problem is occuring in the function module
'MATERIAL_MAINTAIN_DARK'. -
create table my_employee
(id number(4)primary key,
last_name varchar2(25),
first_name varchar2(25),
userid varchar2(8),
salary number(9,2)
I want to write an INSERT statement to MY_EMPLOYEE table . Concatenate the first letter of the first name and first seven characters of the last name to produce user ID using a single sql statement
I wrote the query like this and i am getting logical error
insert into my_employee
values(&id,'&last_name','&first_name',substr('&&first_name',1,1)||substr('&last_name',1,7),&salary);
SQL> insert into my_employee
2 values(&id,'&last_name','&first_name',substr('&&first_name',1,1)||substr('&last_name',1,7),&sal
ary);
Enter value for id: 20
Enter value for last_name: popopopp
Enter value for last_name: qwertyyuu
Enter value for salary: 300000
old 2: values(&id,'&last_name','&first_name',substr('&&first_name',1,1)||substr('&last_name',1,7),
new 2: values(20,'popopopp','o',substr('o',1,1)||substr('qwertyyuu',1,7),300000)
1 row created.
it is asking the last_name two timesyou can do it with a .sql script
c:\my_emp.sql
PROMPT
PROMPT instering my_employees
PROMPT
ACCEPT ID NUMBER PROMPT 'ID ? : '
ACCEPT FIRST_NAME CHAR PROMPT 'FIRST_NAME ?: '
ACCEPT LAST_NAME CHAR PROMPT 'LAST_NAME ?: '
ACCEPT SALARY NUMBER PROMPT 'SALARY ? : '
insert into my_employee values(&id,'&last_name','&first_name',substr('&&first_name',1,1)||substr('&last_name',1,7),&salary);
SELECT * FROM my_employee where id=&&id;
and then from sqlplus @c:\my_emp.sql
scott@ORCL> @C:\MY_EMP
instering my_employees
ID ? : 20
FIRST_NAME ?: john
LAST_NAME ?: papas
SALARY ? : 1000
old 1: insert into my_employee values(&id,'&last_name','&first_name',substr('&&first_name',1,1)||substr('&last_name',1,7),&salary)
new 1: insert into my_employee values( 20,'papas','john',substr('john',1,1)||substr('papas',1,7), 1000)
1 row created.
old 1: SELECT * FROM my_employee where id=&&id
new 1: SELECT * FROM my_employee where id= 20
ID LAST_NAME FIRST_NAME USERID SALARY
20 papas john jpapas 1000
scott@ORCL> -
Expalin about ABAP Logical errors?
Help me sending appropriate link to understand more.
Moderator Message: Read the Rules of Engagement of this forum.
Edited by: kishan P on Dec 27, 2011 9:50 PMHi Vinay,
You can't delete the ABAP Runtime errors. But you can catch the errors using catch exception Statement.
For Example,
Class-based exceptions are handled in the following control structure:
TRY.
... " TRY block (application coding)
CATCH cx_... cx_... ...
... " CATCH block (exception handler)
CATCH cx_... cx_... ...
... " CATCH block (exception handler)
CLEANUP.
... " CLEANUP block (cleanup context)
ENDTRY.
Try This Sample Code,
*--EXAMPLE FOR RUNTIME ERROR--
*DATA : VALUE1 TYPE I.
*VALUE1 = 1 / 0. -
>>>>>> IT MAKES RUN TIME ERROR.
*WRITE : VALUE1.
*-EXAMPLE FOR HOW TO CATCH THE ARITHMETIC ERROR AT THE RUN TIME USING SUBRC----
DATA : VALUE1 TYPE I.
CATCH SYSTEM-EXCEPTIONS ARITHMETIC_ERRORS = 1.
VALUE1 = 1 / 0.
WRITE : VALUE1.
ENDCATCH.
IF SY-SUBRC = 1.
WRITE : ' IT MAKES ERROR'.
ELSE.
WRITE : VALUE1.
ENDIF.
Thanks,
Reward If Helpful. -
Hello Experts,
Please provide your guidance for the following scenario.
I need to calculate the 'Accumulated Depreciation' for every month, based on the amounts in the 'AccumDep' and the 'Depreciation' accounts.
In other words, the value of the Accumulated Depreciation for the month of Feb should be equal to (Accumulated Depreciation in Jan + Depreciation in Jan), and so on.
To accomplish this, I have written the following script logic.
*WHEN ACCOUNT
*IS AccumDep, Depreciation
*FOR %MON% = 2009.FEB,2009.MAR,2009.APR
*REC(FACTOR=1, ACCOUNT=AccumDep, TIME=%MON%)
*NEXT
*ENDWHEN
*COMMIT
The above logic was validated without any 'syntax' errors. However, I do not see the desired results, as the Accumulated Depreciation is not getting updated every month. The amount from FEB appears for MAR & APR also.
Therefore, could you please review the above script and let me know if there are any 'logical' errors?
All your guidance is greatly appreciated. Thanks...Hi,
You are not getting the desired result because you are trying to aggregate the depreciation and the accumulated depreciation of the same month and post the result again in the same month. Lets say the code is working for 2009.MAR. You are trying to add the depreciation and accumulated depreciation of 2009.MAR. However, you still dont have the acc depreciation of 2009.MAR. You basically need to take the acc depreciation of the previous month.
You can try something like:
*WHEN ACCOUNT
*IS Depreciation
*FOR %MON% = 2009.FEB,2009.MAR,2009.APR
*REC(EXPRESSION = %VALUE% + ([ACCOUNT].[AccumDep],[TIME].Previous), ACCOUNT=AccumDep)
*NEXT
*ENDWHEN
*COMMIT
You can have a property called Previous to store the previous month of each period in the time dimension.
Hope you got the idea. -
I can't log in to game centre but I can log into iTunes. I recently changed my password. I checked the troubleshooter and am getting the message regarding server error but how do I fix this? It doesn't specify this in that article. I don't have firewalls
Hello sadiepix,
The following article details several things that can be done to quell iTunes' constant need for authorization.
iTunes repeatedly prompts to authorize computer to play iTunes Store purchases
http://support.apple.com/kb/TS1389
Cheers,
Allen -
Newbie - JSP & bean shopping cart logic error?
Hello,
I am attempting to bulid a shopping cart facility on a JSP site that I am building.
I am having difficulties adding an item to the basket.
The page below (bookDetail.jsp) displays items for sale from a database. At the foot of the page, I have set up a hyperlink to add an item to a basket bean instance created in this page.
What happens is the page will load correctly, when i hover the mouse over the hyperlink to add the item to the basket, the status bar shows the URL of the current page with the details of the book appended. This is what I want. But when I click the link, the page will only reload showing 20% of the content.
Netbeans throws up no errors, neither does Tomcat, so I am assuming I have made a logical error somewhere.
I have enclosed the Book class, and the ShoppingCart class for your reference.
Any help would be really appreciated as I am at a loss here.
Cheers.
Edited highlights from bookDetail.jsp
//page header importing 2 classes - Book and ShoppingCart
<%@ page import="java.util.*, java.sql.*, com.shopengine.Book, com.shopengine.ShoppingCart" errorPage="errorpage.jsp" %>
//declare variables to store data retrieved from database
String rs_BookDetail_bookRef = null;
String rs_BookDetail_bookTitle = null;
String rs_BookDetail_author = null;
String rs_BookDetail_price = null;
//code that retrieves recordset data, displays it, and places it in variables shown above
<%=(((rs_BookDetail_bookRef = rs_BookDetail.getString("book_ref"))==null || rs_BookDetail.wasNull())?"":rs_BookDetail_bookRef)%>
<%=(((rs_BookDetail_author = rs_BookDetail.getString("author"))==null || rs_BookDetail.wasNull())?"":rs_BookDetail_author)%>
<%=(((rs_BookDetail_bookTitle = rs_BookDetail.getString("book_title"))==null || rs_BookDetail.wasNull())?"":rs_BookDetail_bookTitle)%>
<%=(((rs_BookDetail_price = rs_BookDetail.getString("price"))==null || rs_BookDetail.wasNull())?"":rs_BookDetail_price)%>
//this link is to THIS PAGE to send data to server as request parameters in Key/Value pairs
// this facilitates the add to basket function
<a href="<%= response.encodeURL(bookDetail.jsp?title=
"+rs_BookDetail_bookTitle+"
&item_id=
"+rs_BookDetail_bookRef +"
&author="+rs_BookDetail_author +"
&price=
"+rs_BookDetail_price) %> ">
<img src="images\addtobasket.gif" border="0" alt="Add To Basket"></a></td>
// use a bean instance to store basket items
<jsp:useBean id="basket" class="ShoppingCart" scope="session"/>
<% String title = request.getParameter("title");
if(title!=null)
String item_id = request.getParameter("item_id");
double price = Double.parseDouble(request.getParameter("price"));
Book item = new Book(item_id, title, author, price);
basket.addToBasket( item );
%>
ShoppingCart class that is used as a bean in bookDetail.jsp shown above
package com.shopengine;
//import packages
import java.util.*;
//does not declare explicit constructor which automatically creates a zero argument constructor
//as this class will be instantiated as a bean
public class ShoppingCart
//using private instance variables as per JavaBean api
private Vector basket;
public ShoppingCart()
basket = new Vector();
}//close constructor
//add object to vector
public void addToBasket (Book book)
basket.addElement(book);
}//close addToBasket method
//if strings are equal, delete object from vector
public void deleteFromBasket (String foo)
for(Enumeration enum = getBasketContents();
enum.hasMoreElements();)
//enumerate elements in vector
Book item = (Book)enum.nextElement();
//if BookRef is equal to Ref of item for deletion
//then delete object from vector.
if (item.getBookRef().equals(foo))
basket.removeElement(item);
break;
}//close if statement
}//close for loop
}//close deleteFromBasket method
//overwrite vector with new empty vector for next customer
public void emptyBasket()
basket = new Vector();
}//close emptyBasket method
//return size of vector to show how many items it contains
public int getSizeOfBasket()
return basket.size();
}//close getSizeOfBasket method
//return objects stored in Vector
public Enumeration getBasketContents()
return basket.elements();
}//close getBasketContents method
public double getTotalPrice()
//collect book objects using getBasketContents method
Enumeration enum = getBasketContents();
//instantiate variable to accrue billng total for each enummeration
double totalBillAmount;
//instantiate object to store data for each enummeration
Book item;
//create a loop to add up the total cost of items in basket
for (totalBillAmount=0.0D; enum.hasMoreElements(); totalBillAmount += item.getPrice())
item = (Book)enum.nextElement();
}//close for loop
return totalBillAmount;
}//close getTotalPrice method
}//close shopping cart class
Book Class that is used as an object model for items stored in basket
package com.shopengine;
import java.util.*;
public class Book{
//define variables
private String bookRef, bookTitle, author;
private double price;
//define class
public Book(String bookRef, String bookTitle, String author, double price)
this.bookRef= bookRef;
this.bookTitle=bookTitle;
this.author=author;
this.price=price;
//create accessor methods
public String getBookRef()
return this.bookRef;
public String getBookTitle()
return this.bookTitle;
public String getAuthor()
return this.author;
public double getPrice()
return this.price;
}//close classpage will only reload showing 20% of the content.Im building some carts too and I had a similiar problem getting null values from the mysql database. Are you getting null values or are they just not showing up or what?
On one of the carts I'm building I have a similiar class to yours called products that I cast onto a hashmap works alot better. Mine looks like this, maybe this is no help I don't know.......
public class Product {
/**An Item that is for sale.*/
private String productID = "Missing";
private String categoryID = "Missing";
private String modelNumber = "Missing";
private String modelName = "Missing";
private String productImage = "Missing";
private double unitCost;
private String description = "Missing";
public Product(
String productID,
String categoryID,
String modelNumber,
String modelName,
String productImage,
double unitCost,
String description) {
setProductID(productID);
setCategoryID(categoryID);
setModelNumber(modelNumber);
setModelName(modelName);
setProductImage(productImage);
setUnitCost(unitCost);
setDescription(description);
public String getProductID(){
return(productID);
private void setProductID(String productID){
this.productID = productID;
public String getCategoryID(){
return(categoryID);
private void setCategoryID(String categoryID){
this.categoryID = categoryID;
public String getModelNumber(){
return(modelNumber);
private void setModelNumber(String modelNumber){
this.modelNumber = modelNumber;
public String getModelName(){
return(modelName);
private void setModelName(String modelName){
this.modelName = modelName;
public String getProductImage(){
return(productImage);
private void setProductImage(String productImage){
this.productImage = productImage;
public double getUnitCost(){
return(unitCost);
private void setUnitCost(double unitCost){
this.unitCost = unitCost;
public String getDescription(){
return(description);
private void setDescription(String description){
this.description = description; -
JFrames + Returning a Variable... Beginner's Logical Error
Hi,
I'm new to Java and programming in general. I'm trying to do something that seems pretty simple, but I'm making a logical error that is preventing my little program from working.
All I'm trying to do is this... I've created a little JFrame that asks a user for a university's name, address, and the number of students in the university. All of this is within a class called InputWindowSmall. I just want to be able to return those Strings, univName, univAdress, univStudents, to my main program so I can put them into a different class.
I've tried get methods, but that's silly, it doesn't work, it returns null because the program doesn't wait for the user's input.
Does anyone have any suggestions?
Also... I'm a terribly poor Object-Oriented-Thinker... If I'm doing anything that doesn't make sense in an Object-Oriented-Mindset, please point it out! I'd like to try and get better! Thanks!
CODE
InputWindowSmall
package FinalProject;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.GridLayout;
import javax.swing.JTextField;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JButton;
/** Class Definition: Input Window - small input window that asks for University name and address*/
public class InputWindowSmall extends JFrame
private JLabel nameLabel;
private JLabel addressLabel;
private JLabel numberStudentsLabel;
private JLabel whiteSpace;
private JTextField nameField;
private JTextField addressField;
private JTextField numberStudentsField;
private JButton okButton;
private String univName;
private String univAddress;
private String univStudents;
/** Constructor with extra parameters */
public InputWindowSmall(University univ)
//Names title bar of window
super("Welcome!");
//Sets layout of window
setLayout(new GridLayout(4,2));
//Sets text for nameLabel and adds to window
JLabel nameLabel = new JLabel(" University Name: ");
add(nameLabel);
//Sets and adds nameField to window
nameField = new JTextField(10);
add(nameField);
//Sets text for addressLabel and adds to window
JLabel addressLabel = new JLabel(" University Address: ");
add(addressLabel);
//Sets and adds addressField to window
addressField = new JTextField(10);
add(addressField);
//Sets text for numberStudentsLabel and adds to window
JLabel numberStudentsLabel = new JLabel(" Number of Students: ");
add(numberStudentsLabel);
//Sets and adds numberStudentsField to window
numberStudentsField = new JTextField(10);
add(numberStudentsField);
//Sets and adds white space
JLabel whiteSpace = new JLabel(" ");
add(whiteSpace);
//Sets and adds button
okButton = new JButton("OK");
add(okButton);
//create new ButtonHandler for button event handling
ButtonHandlerSmall handler = new ButtonHandlerSmall();
okButton.addActionListener(handler);
}//end InputWindowSmall
private class ButtonHandlerSmall implements ActionListener
public void actionPerformed(ActionEvent event)
String univName = nameField.getText();
String univAddress = addressField.getText();
String univStudents = numberStudentsField.getText();
}//end actionPerformed
}//end ButtonHandlerSmall
public String getUniversityName()
return univName;
}//end getUniversityName
public String getUniversityAddress()
return univAddress;
public String getUniversityNumberStudents()
return univStudents;
}//ProjectTest (contains main)
/** Class Definition: ProjectTest - contains main*/
package FinalProject;
import javax.swing.JFrame;
public class ProjectTest {
public static void main(String args[])
//Creates a new university
University univ = new University();
//Instantiates and sets up the initial small window which asks for university name, address, and # students
InputWindowSmall inputWindowSmall = new InputWindowSmall(univ);
inputWindowSmall.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
inputWindowSmall.setSize(350, 120);
inputWindowSmall.setVisible(true);
inputWindowSmall.setLocationRelativeTo(null);
String univN = inputWindowSmall.getUniversityName();
String univA = inputWindowSmall.getUniversityAddress();
String univS = inputWindowSmall.getUniversityNumberStudents();
System.out.println(univN);
System.out.println(univA);
System.out.println(univS);
}//end main
}Edited by: heathercmiller on Apr 28, 2008 5:57 AM
Edited by: heathercmiller on Apr 28, 2008 5:58 AMOh! ...Here is a somewhat important detail I forgot to mention...
There's another class called University (I've included it below). The main part of the program instantiates an object of type University, and that object is passed to the InputWindowSmall class. In the end, I want those variables I mentioned above to be placed within the University object I created. ...And I've already passed a University object to InputWindowSmall... I'm just not entirely sure how to assign values to the variables within the University object while in a different class. ...Does that make any sense?
University
package FinalProject;
import java.util.Arrays;
/** Class Definition: University*/
public class University extends ProjectTest implements TuitionGenerate
private String universityName; /** refers to the name of the University */
private String address; /** refers to the address of the University */
private Student studentList[]; /** an array of Student objects */
/** Default Constructor */
University()
setuniversityName("University_of_Miami");
setaddress("555_Coral_Gables_St.");
/** Constructor with parameters */
University(String name,String add)
setuniversityName(name);
setaddress(add);
/** Constructor with extra parameters */
University(String name,String add, Student array[])
setuniversityName(name);
setaddress(add);
setstudentList(array);
/** method: gets universityName*/
public String getuniversityName()
return universityName;
/** method: gets address*/
public String getaddress()
return address;
/** method: gets studentList*/
public Student[] getstudentList()
return studentList;
/** method: sets universityName*/
public void setuniversityName(String name)
universityName=name;
/** method: sets address*/
public void setaddress(String add)
address=add;
/** method: sets studentList*/
public void setstudentList(Student array[])
studentList=new Student[array.length];
studentList=array;
/** method: returns a string representation of universityName and address*/
public String toString()
String output="University Name: " + universityName + "\nAddress: " + address + "\n\n";
return output;
/** method: sorts the array of students alphbetically by last name*/
public void studentSort()
String temp[]=new String[studentList.length];
for(int i=0;i<studentList.length;i++)
temp=studentList[i].getlastName();
Arrays.sort(temp);
Student temp2[]=new Student[studentList.length];
for(int i=0;i<temp.length;i++)
for(int j=0;j<studentList.length;j++)
if(temp[i].equals(studentList[j].getlastName()))
temp2[i]=studentList[j];
break;
studentList=temp2;
/** method: prints the list of students*/
public void printStudentList()
System.out.println("Students:\n");
for(int i=0;i<studentList.length;i++)
System.out.println(studentList[i].toString());
/** method: prints tuition from interface GenerateTuition*/
public void printTuition()
for(int i=0;i<studentList.length;i++)
System.out.println(studentList[i].toString());
System.out.println(" Tuition: $" + studentList[i].calTuition() + "0");
/** method: gets tuition from calTuition method*/
public double getTuition(Student x)
return x.calTuition();
Edited by: heathercmiller on Apr 28, 2008 6:07 AM -
Error Logging and notifying users regarding the errors
Hi..
we are designing a workflow in which if any user comes across an error (at any branch or while executing an action) must be alerted with the error and must send a notification to the admin that the process has stalled at that particular part of the workflow due to some error.
my doubts are
1.how can we notify the admin and the initiator of the workflow regarding the error a particular user gets.i saw in adminui that there are two tabs for the admin to view the stalled actions/stalled branches.but the admin and the user needs to be notified with an alert or email that a particular action has been stalled.
i think i conveyed my problem in a correct manner.if its confusing then plz tell me coz i am already confused in this..Thank you sir for your immediate response of the query.
In the workflow which we are designing,a service request from filled by the user will be routed to the particular approver and he inturn will approve/reject the form accordingly.once he approves,the form is routed to the service provider who will fulfill the service requested and approved.
1.Now,for instance suppose that the workflow gets stalled while the form is with the approver.my question is how to notify the user that the service he requested is delayed due to the stalling of the process in between as well as the admin alerting him with the error which stalled the workflow process.
2.you said that it is easy to setup an email address within the adminui..but i dont know how to do that as i am a beginner.
3.Also u asked me to specify the errors for which we need to send alerts and email notifications...whatever error that occurs whenever the workflow gets staleld needs to be notified both to the user and the admin (as per our requirements).it would be helpful to us if u give a solution for this.
thank you..
Raghava Kumar V.S.S. -
Logic error in a class I wrote...help
I wrote this class to filter a simplified version of Military time; basically it
returns a true or false statement to whether a specified string contains
the appropriate character sequence. My problem is that it seems to
report false even if my time format is correct.
example:
correct time: "0700"
incorrect time: "700" or invlalid characters "asdf "
maybe you all could catch me logic error...my head is bust
class SimpleMilitaryTime
//Verify that their are only 4 characters in the string
public boolean verifyLength(String time)
int textFieldLength;
boolean flag = true;
textFieldLength = time.length();
if (textFieldLength == 4)
flag = true;
else
flag = false;
return flag;
}//end verify length
//Method for comparing characters that can be used
public boolean verifyNumerals( String time )
boolean flag = true;
int flagCounter = 0;
char theChar;
//testing characters to see if they match or dont
//match the below lists of char numerals
//If they don't, the flagcounter is increased by
//one and the flag is returned as false
//because the flagcounter is greater than 0
//indicating that they are not all numerals but
//some other sort of character
for (int i = 0; i <= time.length(); i++)
theChar = (char)time.indexOf(i);
switch (theChar)
case '0':
break;
case '1':
break;
case '2':
break;
case '3':
break;
case '4':
break;
case '5':
break;
case '6':
break;
case '7':
break;
case '8':
break;
case '9':
break;
default:
flagCounter = flagCounter + 1;
}//end of switch
}//end of for loop
if (flagCounter < 0 )
flag = true;
else
flag = false;
return flag;
}//End of Method
//Method to determine numeral format
public boolean verifyFormat( String time )
boolean flag = true;
boolean hrFlag = true;
boolean minFlag = true;
String hr, min;
hr = time.substring(0, 1);
min = time.substring(2, 3);
hrFlag = verifyHrRange( hr );
//return true if its in the hour range of 0 to 23
minFlag = verifyMinRange( min );
//return true if its in the minutes range of 0 to 59
//If hrFlag or minFlag is false then format does
//not meet the Military Time Format
if (hrFlag == false || minFlag == false)
flag = false;
else
flag = true;
return flag;
}//end of Method
//Verify the Range of Hr between 0 and 23
public boolean verifyHrRange( String hr )
int hrTime;
boolean flag = true;
hrTime = Integer.parseInt( hr );
if ( hrTime >= 0 && hrTime <= 23 )
flag = true;
else
flag = false;
return flag;
}//End of Method
//Verify the Range of Minutes between 0 and 59
public boolean verifyMinRange( String min )
int minTime;
boolean flag = true;
minTime = Integer.parseInt( min );
if ( minTime >= 0 && minTime <= 59 )
flag = true;
else
flag = false;
return flag;
}//End of Method
//Method validates total time content
public boolean validateTime( String time )
boolean flag = true;
boolean flagLength = true;
boolean flagNumerals = true;
boolean flagFormat = true;
flagLength = verifyLength( time ); //Is the length == to 4 characters long
if( flagLength == true )
flagNumerals = verifyNumerals( time ); //Is the content made up of numerals
if( flagNumerals == true )
flagFormat = verifyFormat( time ); //Is the format within MilitaryTime Specs
if( flagFormat == true )
flag = true;
else
flag = false; //IF one or all are FALSE then FLAG is set to false
else
flag = false;
else
flag = false;
//return status of test run
return flag;
}//End of Method
}//End of ClassInterestingly enough, although both examples simplify the logic, I still
recieve a "false" when testing it. Here is some more code that I use
when a text field has lost focus. Right now the code is set to just test
the input.
The field is inialized to "1234". Once the field gains focus, it immediately sets to "false"...not sure why.?.? Even after resetting field
to another 4 digit numeral sequence I still get a "false" return instead of
verifying it as "true. " any ideas?
here is the code for testing the MilitaryTime class:
private class TextFieldListener extends FocusAdapter
//method that listens losing focus of textfield
public void focusLost( FocusEvent ev )
boolean flag;
String indFALSE, indTRUE;
indFALSE = "FALSE";
indTRUE = "TRUE";
int strLength;
flag = mt.isValidTime(sunMornStartTime_str); //mt is for MilitaryTime
if (flag == false)
sunMornStartTime.setText(new String(indFALSE));
if (flag == true)
sunMornStartTime.setText(new String(indTRUE));
}//End of Method
}//End of private class TextFieldAction -
There is a way to follow the details of each paguina Web within iExpenses, I have a logical error where I erased information already captured by pressing the button "Save" someone could mencionarme something.
Thanksyou can do it with a .sql script
c:\my_emp.sql
PROMPT
PROMPT instering my_employees
PROMPT
ACCEPT ID NUMBER PROMPT 'ID ? : '
ACCEPT FIRST_NAME CHAR PROMPT 'FIRST_NAME ?: '
ACCEPT LAST_NAME CHAR PROMPT 'LAST_NAME ?: '
ACCEPT SALARY NUMBER PROMPT 'SALARY ? : '
insert into my_employee values(&id,'&last_name','&first_name',substr('&&first_name',1,1)||substr('&last_name',1,7),&salary);
SELECT * FROM my_employee where id=&&id;
and then from sqlplus @c:\my_emp.sql
scott@ORCL> @C:\MY_EMP
instering my_employees
ID ? : 20
FIRST_NAME ?: john
LAST_NAME ?: papas
SALARY ? : 1000
old 1: insert into my_employee values(&id,'&last_name','&first_name',substr('&&first_name',1,1)||substr('&last_name',1,7),&salary)
new 1: insert into my_employee values( 20,'papas','john',substr('john',1,1)||substr('papas',1,7), 1000)
1 row created.
old 1: SELECT * FROM my_employee where id=&&id
new 1: SELECT * FROM my_employee where id= 20
ID LAST_NAME FIRST_NAME USERID SALARY
20 papas john jpapas 1000
scott@ORCL> -
Essbase Internal Logic Error [7333]
We have a "backup" application to which we copy all of our applications' databases to every night.
However now when we try to start the backup application we get one or more of the following errors in the log, and the app won't start:
Unable to Allocate Aligned Memory for [pMemByte] in [adIndInitFree].
Unable to Allocate Aligned Memory for [pTct->pTctFXBuffer] in [adTmgAllocateFXBuffer].
Essbase Internal Logic Error [7333]
RECEIVED ABNORMAL SHUTDOWN COMMAND - APPLICATION TERMINATING
The other live applications that I'm copying from all start correctly. There is plenty of disk space and free memory on the server.
I've read about other people getting these errors and tried the following:
- Recreated the backup application (which cleared out any temporary files that might have been hanging around)
- Validated all the other applications that I'm copying from
It does seem to be a capacity issue because when I remove some of the larger databases from the backup application it does start. However I can't attribute the problem to an individual large database because when I copy each of them to the application by themselves then they're fine.
I'd appreciate any ideas on what to try next... could this suggest that something's wrong with the memory chips on the server?
Thanks
Mark
Update: I have used a workaround by putting half of the databases in one backup application and the other half in another application. Both of these applications start without a problem. Is there a maximum size of databases in an app? I am trying to add 21 databases with a combined .PAG file size of only 2.4GB.
Edited by: MatMark on Nov 22, 2010 2:46 PMThank you John, yes it appears to be the 2GB limit, however I'm a bit confused as to what I should be measuring that exceeds 2GB, you mentioned index cache (I assume these are IND) which total to only 140MB.
The PAG files total to 3.7GB but these would have been greater than 2GB for a long time, before this problem started occurring.
Anyway, case closed, I have to split these up into separate applications. Thanks for your help.
Maybe you are looking for
-
I've got a function in a CFC that inserts a parent value into an Oracle table (see below). I want to extend the function to return the new parent ID so that I can use it to insert the child values. I'm using <cfscript> to execute the function which w
-
Upgrade to snow leopard on mac air
how do i upgrade to snow leopard on my mac air thats running just leopard?
-
How to set ...? - fixed.
Hi, Apologize, I fixed it.
-
Wrt54g can only connect to 1 l/top with wepkey
i have setup a wep key on my router but only 1 laptop can connect to it,how can i connect with another laptop please
-
The budget is consumed two times of WBS element
Hi My probem is that The budget is consumed two times of WBS element . The first consumption is purcharse requesition (ME51N) and before the second consumption is funds precommitment . For us the wbs elements WBS are statistical budget . how do we co