InStr question
When i use the InStr function, it return the first finding in the string.
How can i find the last time it apper?
wodi :=abc@cdf@fre@ytr;
instr (wodi,'@')
give me the first time.
i use:
instr(wodi,1,(length(wodi)-length(replace(wodi,'@','')))
to find the last one.
can i do it in more nice way??
You can use 4 parameters for INSTR.
instr(string, search_string, -1, 1)will give you last occurance because it starts searching from end.
For an insight, see this.
http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14200/functions068.htm
Cheers
Sarma.
Similar Messages
-
Dbms_lob.instr question
Hello,
I have a field that holds CLOBs in the database. I have a textfield in which the user can enter a target string, then I hope to use dbms_lob.instr to search for the target string in CLOB. The code looks like: dbms_lob.instr(upper(I.COMMENTS),upper(nvl(:P26_SEARCH_NAME,I.COMMENTS))). If I replace the textfield value :P26_SEARCH_NAME with a string, the line works fine, but the current line returns the error
ORA-22835: Buffer too small for CLOB to CHAR or BLOB to RAW conversion (actual: 6250, maximum: 4000) Can someone offer some help with a fix?Steven - Try v('P26_SEARCH_NAME') as a test to see if it makes any difference. If not, I can look at your test case if you put it on apex.oracle.com.
Scott -
Basic instr question (unclear orcale docs/fundamentals guide)
Hi,
i'm obviously quite new to this, but do understand the instr function more generally, its just the 'position' variable that's confusing me a bit, and both the oracle documentation and the fundamentals exam guide are quite vague on it.
The INSTR(source string, search item, [start position],[nth occurrence of search
item) function returns a number that represents the position in the source string,
beginning from the given start position, where the nth occurrence of the search item
begins
ExamplesExample 7-127 Using Character Position to Search Forward to Find the Position of a Substring
The following example searches the string "Corporate Floor", beginning with the third character, for the string "or". It returns the position in "Corporate Floor" at which the second occurrence of "or" begins.
SHOW INSTR('Corporate Floor','or', 3, 2)
14
surely these two things are just untrue?
if the search began from the given start position in the example taken from oracle docs, the answer would be 12, not 14? from character 3 ('r') to the second instance of 'or' is 12 characters inclusive, isn't it?
or have i completely misunderstood?
thanks,
Nick
Edited by: 967660 on 25-Oct-2012 06:55
Edited by: 967660 on 25-Oct-2012 06:56Hi, Nick,
967660 wrote:
... btw, why do the tags not work?What are they supposed to do?
If you want to post formatted text on this site in a fixed-width font, without compressing whitespace, then type these 6 characters:
\(small letters only, inside curly brackets) before and after each section of formatted text. This is great for query output as well as code samples. -
Dear all,
I have a string that will spool to a file from sql*plus, and the string maybe more than 255 characters, e.g.:
v_sql := 'select surname, firstname, sex, birth,
address1, address2,
address3, ..., .... from employee;'
dbms_output.put_line(v_sql);
Now, I want to chop the string in several lines when 'meet' the comma ',' , the output I want become to, e.g.:
dbms_output.put_line('select surname,');
dbms_output.put_line('firstname,');
dbms_output.put_line('sex,');
dbms_output.put_line('... from employee;');
So, I use the loop and instr in a procedure:
procedure xxx (p_sql in varchar2) is
v_len number := length(p_sql);
v_comma number := 0;
v_next_comma number := 0;
v_string varchar2(1000);
begin
for v_cnt in 1..v_len loop
if v_comma = 0 then
v_comma := instr(p_sql, ',');
v_string := substr(p_sql, 1, v_comma-1);
dbms_output.put_line(v_string);
else
v_comma := instr(p_sql, ',');
v_next_comma := instr(substr(p_sql, v_comma+1, v_len-v_comma), ',');
v_string := substr(p_sql, v_comma+1, v_next_comma-1);
dbms_output.put_line(v_string);
end if;
if v_comma > 0 and v_next_comma = 0 then
v_cnt := v_comma +1; <--- v_cnt will not change
elsif v_next_comma > 0 then
v_cnt := v_next_comma +1;
end if;
end loop;
end xxx;
From the above coding, however, I found a problem that v_cnt will not skip to the 'comma' position. And I feel that it is not efficient if the length of the string is very long...
So, is there another way to do? Please help. Thank you!
Remarks: Database 10g.
Regards.yes, it would see that you aren't running 10r2. here is the code you need
http://www.oraclecommunity.net/group/sqlplus/forum/topic/show?id=1988559%3ATopic%3A9386
the file - vsql.sql - is attached at the end. instead of using a cursor loop (curr_sql in my code) to get a statement, you'll just use your sql statement already in a variable. it's a simple procedure - breaks on certain keywords, or delimiters (like commas) before the linessize (132) is reached, and dbms_outputs the text.
changing the end of script to use a static sql statement:
begin
my_stmt := 'MERGE /*+ dynamic_sampling(ST 4) dynamic_sampling_est_cdn(ST) */ INTO STATS_TARG'||
'ET$ ST USING (SELECT STALENESS, OSIZE, OBJ#, TYPE#, CASE WHEN STALENESS > .5 THE'||
'N 128 ELSE 0 END + AFLAGS AFLAGS, STATUS, SID, SERIAL#, PART#, BO# FROM ( SELECT'||
' /*+ no_expand dynamic_sampling(4) dynamic_sampling_est_cdn */ DECODE(BITAND(T.F'||
'LAGS,16), 16, ROUND( LOG(0.01, NVL( LEAST( 100, GREATEST( 0.01, (DECODE(BITAND(M'||
'.FLAGS, 1), 1, GREATEST(T.ROWCNT, M.INSERTS), LEAST((M.INSERTS + M.DELETES ';
sql_frmt ( my_stmt, save_line, prefix );
if (save_line is not null) then
dbms_output.put_line( prefix || save_line );
save_line := null;
end if;
end;
MERGE /*+ dynamic_sampling ( ST 4 ) dynamic_sampling_est_cdn ( ST ) */ INTO STATS_TARGET$ ST USING (
SELECT STALENESS, OSIZE, OBJ#, TYPE#, CASE WHEN STALENESS > .5 THEN 128 ELSE 0 END + AFLAGS AFLAGS, STATUS, SID, SERIAL#, PART#,
BO#
FROM (
SELECT /*+ no_expand dynamic_sampling ( 4 ) dynamic_sampling_est_cdn */ DECODE ( BITAND ( T.FLAGS, 16 ), 16, ROUND ( LOG ( 0.01,
NVL ( LEAST ( 100, GREATEST ( 0.01, ( DECODE ( BITAND ( M.FLAGS, 1 ), 1, GREATEST ( T.ROWCNT, M.INSERTS ), LEAST ( ( M.INSERTS
+ M.DELETES -
Questions about a MasterQuize program
Hi, everyone.
I got a in-class case study program like this in the class:
* This class stores/represents a question that has one of two
* answers: True or False.
* <p></p>
* It needs to track the following information:
* <ul>
* <li>Question text</li>
* <li>Correct answer</li>
* <li>The user's answer to the question</li>
* <li>Points value</li>
* <li>Category</li>
* <li>Difficulty rating</li>
* </ul>
// Our question should allow us to do the following:
// - Create question (constructor) -- may be overloaded
// - Print (display) question
// - Check client's answer for correctness
// - Get points value for question (0 or max)
// - Add "No-BS" grading option
// - Getting client's answer
// - Check to see if answered by client
public class TrueFalseQuestion
// Class constants (to simplify changes to common values)
public static final int MIN_DIFFICULTY_LEVEL = 1;
public static final int MAX_DIFFICULTY_LEVEL = 5;
public static final int DEFAULT_DIFFICULTY_LEVEL = 1;
public static final int DEFAULT_POINT_VALUE = 1;
public static final String DEFAULT_CATEGORY_VALUE = "none";
// Class instance variables
private String questionText;
private String correctAnswer;
private String userAnswer;
private int pointsValue;
private String category;
private int difficultyLevel; // TODO: Set a range for difficulty levels
* @param text The literal wording of this question
* @param answer The correct answer for this question
* @param pts The total points available for this question
* @param ctgry Category keyword for this question
* @param level The perceived/intended difficulty level of this question
* <p></p>
* Defines a TrueFalseQuestion object.
public TrueFalseQuestion (String text, String answer, int pts, String ctgry, int level)
// Set starting values for all instance variables
questionText = text.trim();
correctAnswer = answer.trim();
userAnswer = null; // No user answer supplied yet
if (pts >= 1) // We assume that every problem is worth at least 1 point
pointsValue = pts;
else
pointsValue = DEFAULT_POINT_VALUE;
category = ctgry.trim();
if (level >= MIN_DIFFICULTY_LEVEL && level <= MAX_DIFFICULTY_LEVEL) // within range
difficultyLevel = level;
else
difficultyLevel = DEFAULT_DIFFICULTY_LEVEL;
// Simplified (overloaded) constructors
* @param text The literal wording of this question
* @param answer The correct answer for this question
* @param pts The total points available for this question
* <p></p>
* Defines a TrueFalseQuestion with default values for category and difficulty level.
public TrueFalseQuestion (String text, String answer, int pts)
// Call pre-existing constructor with default category and difficulty
this(text, answer, pts, DEFAULT_CATEGORY_VALUE, DEFAULT_DIFFICULTY_LEVEL);
* @param text The literal wording of this question
* @param answer The correct answer for this question
* <p></p>
* Defines a TrueFalseQuestion with the default point value, default category,
* and default difficulty level.
public TrueFalseQuestion (String text, String answer)
// Call pre-existing constructor with default points, category and difficulty
this(text, answer, DEFAULT_POINT_VALUE, DEFAULT_CATEGORY_VALUE,
DEFAULT_DIFFICULTY_LEVEL);
* @param text The literal wording of this question
* @param answer The correct answer for this question
* @param pts The total points available for this question
* @param ctgry Category keyword for this question
* <p></p>
* Defines a TrueFalseQuestion with the default difficulty level.
public TrueFalseQuestion (String text, String answer, int pts, String ctgry)
// Call pre-existing constructor with default points, category and difficulty
this(text, answer, pts, ctgry,
DEFAULT_DIFFICULTY_LEVEL);
* @param text The literal wording of this question
* @param answer The correct answer for this question
* @param ctgry Category keyword for this question
* <p></p>
* Defines a TrueFalseQuestion with the default point value and the default
* difficulty level.
public TrueFalseQuestion (String text, String answer, String ctgry)
// Use default points and difficulty
this(text, answer, DEFAULT_POINT_VALUE, ctgry, DEFAULT_DIFFICULTY_LEVEL);
* @param text The literal wording of this question
* @param answer The correct answer for this question
* @param pts The total points available for this question
* @param level The perceived/intended difficulty level of this question
* <p></p>
* Defines a TrueFalseQuestion with the default value for the question category.
public TrueFalseQuestion (String text, String answer, int pts, int level)
// Use default category
this(text, answer, pts, DEFAULT_CATEGORY_VALUE, level);
// Clients can invoke this method to retrieve the text of the current question.
// We chose to return the text instead of printing it; this allows the client
// to decide how it should be presented (via a GUI, over a network, etc.)
public String getQuestion ()
return questionText;
// This method allows the client to store the user's answer inside the
// TrueFalseQuestion object for easy comparison
public void submitAnswer (String ans)
userAnswer = ans;
// This method reports whether the submitted answer matches the correct answer
public boolean answerIsCorrect(String userAns) // This version does all the work
if (userAns == null) // No response from user (yet)
return false;
else
// Normalize and compare answers
char key = normalize(correctAnswer); // Get 't' or 'f'
char ans = normalize(userAns); // Get 't' or 'f'
return (key == ans);
public boolean answerIsCorrect ()
return answerIsCorrect(userAnswer); // Call previously-defined version
public int getPointsValue()
return pointsValue;
// Return the points awarded for the user's answer. This method does
// NOT support partial credit; answers are either correct or incorrect.
// If the "No-BS" option is selected, blank (unanswered) questions receive
// 1 point automatically; otherwise, the score will be either 0 or the
// question's normal points value.
public int getPointsEarned(boolean useNoBSRule)
System.out.println("useNoBS: " + useNoBSRule + "\tuserAnswer: " + userAnswer + "\tcorrectAnswer: " + correctAnswer);
if (useNoBSRule && (userAnswer == null))
return 1;
else if (userAnswer == null)
return 0; // Without "No-BS", treat blank problems as incorrect
if (answerIsCorrect() == false)
return 0;
else
return pointsValue;
// This method returns true if the user has submitted an answer
// for this question (regardless of whether that answer is correct)
public boolean hasBeenAnswered ()
return (userAnswer != null);
// Private helper method to convert all answers to single lowercase
// letters (in this case, 't' for TRUE and 'f' for FALSE)
private char normalize (String input)
if (input != null)
input = input.trim(); // Remove leading whitespace
input = input.toLowerCase();
return input.charAt(0);
else
return ' ';
import java.util.*;
* This class represents a complete test or quiz.
* Data stored:
* - List of questions
* - Total score earned
* - Total score possible
* - Name/title of test
* - Instructions
* - Category/class assignment
* - Student (test-taker) name
* - Date test is/was taken
* - Time started
* - Time completed
* - Maximum time allotted
* - (List of) Maximum attempts per question
* - List of attempts per question
* - List of difficulty ratings per question
* - Assignment weight
* Methods:
* - Constructor
* - Add question
* - Display question
* - Display test
* - Display instructions
* - Generate random exam
* - Take/administer test
* - Get score
* STUFF TO DO:
* - Add time/date restrictions
* - Add network access restrictions
* - Add other restrictions/allowances?
* @author (your name)
* @version (a version number or a date)
public class Test
// Class constant
public static final int MAX_NUMBER_OF_QUESTIONS = 10;
// Class instance variables
private String testName;
private int scoreEarned; // What the student earned on the exam
private int scorePossible; // Total point values of all questions
private String instructions; // Exam header text
private ArrayList<TrueFalseQuestion> questions; // Create inside constructor
// Methods
public Test (String name, String instr)
testName = name;
scoreEarned = 0;
scorePossible = 0;
instructions = instr;
questions = new ArrayList<TrueFalseQuestion>(); //[MAX_NUMBER_OF_QUESTIONS];
public String getInstructions()
return instructions;
public int getScore()
return scoreEarned;
public void addQuestion (TrueFalseQuestion q)
scorePossible += q.getPointsValue();
questions.add(q); // Automatically append question to end of test
public String displayQuestion (int position)
if (position < questions.size())
return (position+1) + ". " + questions.get(position).getQuestion();
else
return null;
public String displayTest ()
String result = "";
for (int i = 0; i < questions.size(); i++)
result += (i+1) + ". (";
TrueFalseQuestion t = questions.get(i);
result += t.getPointsValue();
result += " points)\n\n" + displayQuestion(i);
result += "\n\n";
return result;
// Get test length (number of questions)
public int length ()
return questions.size();
// Submit answer to a specific question
public boolean answer(int number, String a)
// Question numbers run from 0-(max-1) -- THIS WAS AN OFF-BY-ONE ERROR AT FIRST
if (number >= 0 && number < questions.size())
TrueFalseQuestion t = questions.get(number);
t.submitAnswer(a);
return true; // Question was answered
else
return false; // Unable to answer (nonexistent) question
// Score exam
public void scoreExam (boolean useNoBS)
scoreEarned = 0;
for (int i = 0; i < questions.size(); i++) // For each question in exam
TrueFalseQuestion t = questions.get(i); // get current question
scoreEarned += t.getPointsEarned(useNoBS);
}// Test harness for the Test and *Question classes
import java.util.*;
public class QuizDriver
public static void main(String[] args)
// Create a new Test object
Test exam = new Test("Sample Exam", "Select the correct answer for each question");
setUp(exam);
Scanner sc = new Scanner(System.in);
System.out.println(exam.getInstructions());
// Administer exam
for (int i = 0; i < exam.length(); i++)
// Print out current question
System.out.println(exam.displayQuestion(i));
// Get user answer
System.out.print("Your answer: ");
String ans = sc.nextLine();
if (ans.equals("")) // Handle blank responses for unanswered questions
ans = null;
exam.answer(i, ans);
// Get exam results
exam.scoreExam(true);
System.out.println("Your final score was " + exam.getScore() + " points.");
private static void setUp (Test t)
TrueFalseQuestion x = new TrueFalseQuestion("The sky is blue.", "true", 2);
t.addQuestion(x);
x = new TrueFalseQuestion("The first FORTRAN compiler debuted in 1957", "true", 5);
t.addQuestion(x);
x = new TrueFalseQuestion("Spock was a Vulcan", "false", 3);
t.addQuestion(x);
}This program is far from finishing.
I have many questions about this program, but let me ask this one first:
In the TrueFalseQeustion class, why are there so many constructors? What is the purpose of setting some of the variables to default values?
Thank you very much!!!
Edited by: Terry001 on Apr 16, 2008 10:02 AMnewark wrote:
Stop ignoring the error messages. You seem to think that an error message means you're doing the assignment wrong. It's probably a simple fix. Post the exact error messages, as well as the code that corresponds to them. The error message will tell you exactly what line the problem occurs on, so you know right where to look.Hi,
After some modifications, the program now gives me the result the assignment wants when I run it. But I still have trouble with the MultipleChoiceQuestion class
Here is the complete program
QuizDriver class
// Test harness for the Test and *Question classes
import java.util.*;
public class QuizDriver
public static void main(String[] args)
// Create a new Test object
Test exam = new Test("Sample Exam", "Select the correct answer for each question");
setUp(exam);
Scanner sc = new Scanner(System.in);
System.out.println(exam.getInstructions());
// Administer exam
for (int i = 0; i < exam.length(); i++)
// Print out current question
System.out.println(exam.displayQuestion(i));
// Get user answer
System.out.print("Your answer: ");
String ans = sc.nextLine();
if (ans.equals("")) // Handle blank responses for unanswered questions
ans = null;
exam.answer(i, ans);
// Get exam results
exam.scoreExam(true);
System.out.println("Your final score was " + exam.getScore() + " points.");
private static void setUp (Test t)
Question x;
x = new TrueFalseQuestion("The sky is blue.", "true", 2);
t.addQuestion(x);
x = new TrueFalseQuestion("The first FORTRAN compiler debuted in 1957", "true", 5);
t.addQuestion(x);
x = new TrueFalseQuestion("Spock was a Vulcan", "false", 3);
t.addQuestion(x);
x = new MultipleChoiceQuestion("What is the color of the car\na.Red\nb.Green", "a. Red", 3);
t.addQuestion(x);
x = new MultipleChoiceQuestion("What is the name of this class\na.CSE110\nb.CSE114", "b, CSE114", 3);
t.addQuestion(x);
}Test
public class Test
// Class constant
public static final int MAX_NUMBER_OF_QUESTIONS = 10;
// Class instance variables
private String testName;
private int scoreEarned; // What the student earned on the exam
private int scorePossible; // Total point values of all questions
private String instructions; // Exam header text
private ArrayList<Question> questions; // Create inside constructor
// Methods
public Test (String name, String instr)
testName = name;
scoreEarned = 0;
scorePossible = 0;
instructions = instr;
questions = new ArrayList<Question>(); //[MAX_NUMBER_OF_QUESTIONS];
public String getInstructions()
return instructions;
public int getScore()
return scoreEarned;
public void addQuestion (Question q)
scorePossible += q.getPointsValue();
questions.add(q); // Automatically append question to end of test
public String displayQuestion (int position)
if (position < questions.size())
return (position+1) + ". " + questions.get(position).getQuestion();
else
return null;
public String displayTest ()
String result = "";
for (int i = 0; i < questions.size(); i++)
result += (i+1) + ". (";
Question t = questions.get(i);
result += t.getPointsValue();
result += " points)\n\n" + displayQuestion(i);
result += "\n\n";
return result;
// Get test length (number of questions)
public int length ()
return questions.size();
// Submit answer to a specific question
public boolean answer(int number, String a)
// Question numbers run from 0-(max-1) -- THIS WAS AN OFF-BY-ONE ERROR AT FIRST
if (number >= 0 && number < questions.size())
Question t = questions.get(number);
t.submitAnswer(a);
return true; // Question was answered
else
return false; // Unable to answer (nonexistent) question
// Score exam
public void scoreExam (boolean useNoBS)
scoreEarned = 0;
for (int i = 0; i < questions.size(); i++) // For each question in exam
Question t = questions.get(i); // get current question
scoreEarned += t.getPointsEarned(useNoBS);
}Question
public class Question
// Class constants
public static final int MIN_DIFFICULTY_LEVEL = 1;
public static final int MAX_DIFFICULTY_LEVEL = 5;
public static final int DEFAULT_DIFFICULTY_LEVEL = 1;
public static final int DEFAULT_POINT_VALUE = 1;
public static final String DEFAULT_CATEGORY_VALUE = "none";
// Class instance variables
protected String questionText;
protected String correctAnswer;
protected String userAnswer;
protected int pointsValue;
protected String category;
protected int difficultyLevel; //TODO: set a range for difficulty levels
// Constructors
public Question (String text, String answer, int pts, String ctgry, int level)
questionText = text.trim();
correctAnswer = answer.trim();
userAnswer = null;
if (pts >= 1)
pointsValue = pts;
else
pointsValue = DEFAULT_POINT_VALUE;
category = ctgry.trim();
if (level >= MIN_DIFFICULTY_LEVEL && level <= MAX_DIFFICULTY_LEVEL)
difficultyLevel = level;
else
difficultyLevel = DEFAULT_DIFFICULTY_LEVEL;
// Overloaded (simplied) constructors
public Question (String text, String answer, int pts)
this(text, answer, pts, DEFAULT_CATEGORY_VALUE, DEFAULT_DIFFICULTY_LEVEL);
public Question (String text, String answer, int pts, String ctgry)
this(text, answer, pts, ctgry, DEFAULT_DIFFICULTY_LEVEL);
public Question (String text, String answer, String ctgry)
this(text, answer, DEFAULT_POINT_VALUE, ctgry, DEFAULT_DIFFICULTY_LEVEL);
public Question (String text, String answer, int pts, int level)
this(text, answer, pts, DEFAULT_CATEGORY_VALUE, level);
// Methods
public String getQuestion ()
return questionText;
// Use this method to store user answers
public void submitAnswer (String ans)
userAnswer = ans;
public boolean answerIsCorrect (String userAns)
if (userAns == null)
return false;
else
// Normalize and compare answers
char key = normalize (correctAnswer); //Get the first letter of an answer
char ans = normalize (userAns); //Get the first letter of an answer
return (key == ans);
public boolean answerIsCorrect ()// Why do we need two answerisCorrect() methods?
return answerIsCorrect (userAnswer);
public int getPointsValue ()
return pointsValue;
public int getPointsEarned (boolean userNoBSRule)
System.out.println ("useNoBS: " + userNoBSRule + "\tuseAnswer: " + userAnswer + "\tcorrectAnswer: " + correctAnswer);
if (userNoBSRule && (userAnswer == null))
return 1;
else if (userAnswer == null)
return 0;
if (answerIsCorrect() == false)
return 0;
else
return pointsValue;
public String getCorrectAnswer ()
return correctAnswer;
public boolean hasBeenAnswered ()
return (userAnswer != null);
private char normalize (String input)
if (input != null)
input = input.trim();
input = input.toLowerCase();
return input.charAt(0);
else
return ' ';
TrueFalseQuestion
public class TrueFalseQuestion extends Question
public TrueFalseQuestion (String text, String answer, int pts, String ctgry, int level)
super(text, answer, pts, ctgry, level);
public TrueFalseQuestion (String text, String answer, int pts)
super(text, answer, pts, DEFAULT_CATEGORY_VALUE, DEFAULT_DIFFICULTY_LEVEL);
public TrueFalseQuestion (String text, String answer, int pts, String ctgry)
super(text, answer, pts, ctgry, DEFAULT_DIFFICULTY_LEVEL);
public TrueFalseQuestion (String text, String answer, String ctgry)
super(text, answer, DEFAULT_POINT_VALUE, ctgry, DEFAULT_DIFFICULTY_LEVEL);
public TrueFalseQuestion (String text, String answer, int pts, int level)
super(text, answer, pts, DEFAULT_CATEGORY_VALUE, level);
// Methods
public String[] getPossibleAnswerChoice ()
String[] possibleAnswerChoice = {"true", "false"};
return possibleAnswerChoice;
} MultipleChoiceQuestion
public class MultipleChoiceQuestion extends Question
public MultipleChoiceQuestion (String text, String answer, int pts, String ctgry, int level)
super(text, answer, pts, ctgry, level);
public MultipleChoiceQuestion (String text, String answer, int pts)
super(text, answer, pts, DEFAULT_CATEGORY_VALUE, DEFAULT_DIFFICULTY_LEVEL);
public MultipleChoiceQuestion (String text, String answer, int pts, String ctgry)
super(text, answer, pts, ctgry, DEFAULT_DIFFICULTY_LEVEL);
public MultipleChoiceQuestion (String text, String answer, String ctgry)
super(text, answer, DEFAULT_POINT_VALUE, ctgry, DEFAULT_DIFFICULTY_LEVEL);
public MultipleChoiceQuestion (String text, String answer, int pts, int level)
super(text, answer, pts, DEFAULT_CATEGORY_VALUE, level);
// Methods
String possibleAnswers;
public String getPossibleAnswers ()
return possibleAnswers;
public void addAnswerChoice (String answerChoice)
String ansChoice = answerChoice;
questionText += "\nansChoice";
possibleAnswers = answerChoice;
public void printAnswerChoice ()
System.out.println (questionText);
} I don't understand why the assignment wants me to build a method in the MultpleChoiceQuestion class to store the potential answer choices, I can make the program display the potential answer choices by including them in the questionText as following in the QuizDriver class
Question x;
x = new MultipleChoiceQuestion("What is the color of the car\na.Red\nb.Green", "a. Red", 3);
t.addQuestion(x); I don't know how to allow the client to construct the list of answer choices one at a time(add one potential answer choice by calling the addAsnwerChoices() method once)
Here are a few original sentences of my assignment which describe what I should do with the MultipleChoiceQuestion class
Using TrueFalseQuestion as a model, develop a new MultipleChoiceQuestion class that can be used to represent a problem where the user must select one of several answer choices (e.g., "Select answer (a), (b), (c), or (d)."). This new question type should have all of the same externally-visible functionality as TrueFalseQuestion, except that it must:
maintain a list of potential answer choices
provide a method that allows the client to construct the list of answer choices one at a time (i.e., the client should be able to call an addAnswerChoice() method to pass a new answer option to the MultipleChoiceQuestion.)
display (as part of the question text) the list of answer choices with appropriate letters ("abcd" instead of "0123") I don't understand what these sentences mean.
1. "Maintain a list of potential answer choices"-- this reminds me of the getPossibleAnswerChoice() method in the TrueFalseQuestion class
public String[] getPossibleAnswerChoice ()
String[] possibleAnswerChoice = {"true", "false"};
return possibleAnswerChoice;
}I wonder that if the potential answer choices I have to store in the MultipleChoiceQuestion class are only letters "a", "b", "c", "d", etc, or include the answer text coming after the letters(eg. a.Red, b.Green)
2. "provide a method that allows the client to construct the list of answer choices one at a time". How do I achieve the functionality "one at a time"? Do I need to pass the input of the client (a potential answer choice) to the variable of the method which stores the list of potential answers?
3. "display (as part of the question text) the list of answer choices with appropriate letters". My question here is that: When the client type in one possible answer, should I append it to the variable questionText? (So I use the questionText variable in the methods of the first and second steps)
Thank you very much for your nice help!
Edited by: Terry001 on Apr 21, 2008 8:01 AM -
How to store the data of a file into an ArrayList?
Hi! everyone.
I want to know
if I have a File, and the data in the file are type int, type String...
And I have a ArrayList which is of type Question
How do I store the data of that file into the ArrayList
I tried to use the while loop(use the hasNextLine() to read the data line by line)
But I cannot add data which are not of type Question to the ArrayList.
Can you tell me what I should do, please?
I also wonder that
The data of the file are of many types, but when I try to read it with the nextLine(), the data all turn out to be of type String. Why?
Thank you.
Edited by: Terry001 on Apr 30, 2008 1:13 PMNo, a line in the file is just part of a question
The format of the file is like this:
*<question type code> : String*
*<question point value> : int*
*<question category> : String*
*<question difficulty level> : int*
*<question text> : String*
*<question correct answer> : String*
*<optional question-specific data> : String*
*<question terminator> : String*
And here is an example
TF //TrueFalseQuestion
5 //points value
None //category
3 //difficulty level
The capital of the United States is Washington, D.C. //question text
True // answer
*** //quetion terminator
I created an ArrayList in the Test class:
private ArrayList<Question> questions; // Create inside constructor
public Test (String name, String instr)
testName = name;
scoreEarned = 0;
scorePossible = 0;
instructions = instr;
questions = new ArrayList<Question>(); //[MAX_NUMBER_OF_QUESTIONS];
}And I tried to use the following method to store the data of the file to the ArrayList
// This method loads a set of questions from a plain text file
public void loadQuestionsFromFile(String fileName) throws FileNotFoundException
try
File fileReader = new File("input.txt");
Scanner sc = new Scanner(fileReader);
while (sc.hasNextLine())
// I don't know how to pass the data I got from the nextLine() method to the ArrayList because they are of different type
catch (FileNotFoundException a)
System.out.println(a);
} As all you said, I should create an Question object in the while loop
Question temp = new Question ();But I have no idea how to pass the int and String to the Question object.
Thank you -
Hi,
I'm trying to make a 2d column chart of quiz entry results with multiple series (one per possible answer) but it's not working as intended. I have 5 series all with code like:
select null link, substr(question, 1, INSTR(question,' - ',1,1)), count(answer) from quizdata
where answer ='Strongly Disagree'
and :P13_DEP = emp_dep
and to_char(sysdate, 'YYYY') = to_char(ins_date, 'YYYY')
group by substr(question, 1, INSTR(question,' - ',1,1))Except with the answer being different (Agree, Strongly Agree~). However, when I load the page it only shows the results of the first series (Strongly Disagree, or if I delete that then Disagree)...anyone see what I'm doing wrong?
x-axis = question
y-axis = count (number of people to select that option this year)
There should be 5 columns per question.
MikeFor anyone who has a similar issue with multiple series being displayed the reason for my error was that I didn't specify a name for the value...since all of them were count(c) they clashed; making it count(c) "Disagree" etc made it display as intended.
Mike -
Text Style question re INSTR Global text source - Logic Pro X
I write arrangments for an 18 piece big band. The line up is 5 saxes, 4 trumpets, 4 trombones, piano, bass, drums, male vocalist & female vocalist.
I only have one GM sound module (Kentron SD2). I use a Midisport 2x4 Midi Interface between the Mac Mini and the Sound Module.
The set up in Logic Pro X is that in the midi envronmemnt I have 1 multi instrument with the complete band linked up to that
The set up is as follows:
Channel 1 1st and 2nd Altos
Channel 2 1st and 2nd Tenors
Channel 3 Baritone
Channel 4 1st and 2nd Trumpets
Channel 5 3rd and 4th Trumpets
Channel 6 1st and 2nd Trombones
Channel 7 3rd and 4th Trombones
Channel 8 Piano
Channel 9 Bass
Channel 10 Drums
Channel 11 Male Vocal
Channel 12 Female Vocal
All the above instrments are on individual tracks even where they share a midi channel- these parts are printed out for use by the band
Channel 13-16 are spare channels that I use during the development of the arrangement - the track contents for these are not printed out
Here is the problem. When I print out the parts for the various insturments and use the INSTR global text to identify the specific instrument on the part header, what is displayed is the patch identity for the various instruments as indicateid in the Library. Logic is not reading the track name for this.
It follows that 1st and 2nd Altos will show on the part header Alto Sax - similarly for the other wind instruments sharing a midi channel.
I am a recent convert from Logic Audio for Windows v 5.5.1 where I used the same set up. In that case Logic read the track information and therefore the instrument identification was correctly displayed on the printed parts.
Any ideas how I can overcome this problem without having to go into each part and manually change the instrument description.
thanks
SwingtonesHi everyone, Sorry for my earlier long post, I just found the answer. All I needed to do is select REGION instead of INSTR
Happy Days!
Swingtones -
Substr/Instr/analytics question
I have a table like this on 9i (soon to be 10g)
CREATE TABLE BASELINE_TESTRUN
RUNID VARCHAR2(42 BYTE) NOT NULL
with data like this:
insert into BASELINE_TESTRUN values ('DEV1-XXX-01');
insert into BASELINE_TESTRUN values ('DEV1-XXX-03');
insert into BASELINE_TESTRUN values ('DEV2-XXX-01');
insert into BASELINE_TESTRUN values ('DEV2-XXX-02');
insert into BASELINE_TESTRUN values ('DEV2-XXX-03');
insert into BASELINE_TESTRUN values ('DEV2-XXX-05');
insert into BASELINE_TESTRUN values ('DEV2-XXX-06');
insert into BASELINE_TESTRUN values ('DEV2-XXX-06');
The output should be the next higher number of the last substring in runid
DEV1-XXX 04
DEV2-XXX 07
There may be missing no, and/or duplicates.
This was my Query for this - It works but seems rather clumsy. I would like to have done it in 1 SQL (avoiding the select from (select)):
select runid , max (next_runno) next_runno
from
select substr(runid,1,instr(runid,'-',1,2)-1) runid,
max(substr(runid,instr(runid,'-',1,2)+1))
over(partition by substr(runid,1,instr(runid,'-',1,2)-1)) + 1 next_runno
from baseline_testrun
where instr(runid,'-',1,2) > 0
---where runid like 'whatever%'
group by runid;
Alternate solutions would be appreciated ... and NO I did not define that table like this.
I would have preferred a sequence and a keys that was not composit (Codd/Date, pls. forgive the creators of the table)
best regards
MetteYou are grouping you data. In this case an aggregate function could be more helpful than an analytic function.
In 9i already you are be able to use the KEEP syntax for aggregates.
Look at this example
SQL> select substr(runid,1,instr(runid,'-',1,2)-1) group_run,
2 to_number(
3 max(substr(runid, instr(runid,'-',1,2)+1))
4 keep (dense_rank last order by substr(runid, instr(runid,'-',1,2)))
5 )+1 max_run
6 from BASELINE_TESTRUN
7 group by substr(runid,1,instr(runid,'-',1,2)-1);
GROUP_RUN MAX_RUN
DEV1-XXX 4
DEV2-XXX 7
SQL> Dimas Version is better, since it avoids the keep syntax, that is not really needed for this special case.
Message was edited by:
Sven W. -
Hi All,
I have a form page which is having multi select list. I am passing the multiselect list value from page 1 to page 2. In page 2 i want to use that value in my code to exclude it from report. But my not instr is not working. Please check my code. My last AND is for not instr.
Edited by: User_Apex on May 25, 2011 8:21 AMBingo...its working.... Thanks a million...i was using some other P2 instead of P3.
Well my question is still unsolved. Please check this thread of mine. It is related to my query
passing the value of multi select list from one page to another
You know when i am selecting two values from multi select list from page 1 and passing it to page 2 then only 1 value is coming in page 2. But when i am clicking on edit for page 2 and then running the page two then both selected values are displayin...i dont know where it is failing. Any suggestion.?
Regards -
If you would take a look at this page http://www.gcfa.org/add_data.asp you will see that between the header and the navigation bar a white line is there. I don't won't it there, how can I get rid of it?
It must be in my CSS I guess, I checked the images and neither one of them the Header nor the Navigation menu have a white border. Here's my code. Thanks in advance for your help.
My page:
<%@LANGUAGE="VBSCRIPT"%>
<!--#include file="Connections/BishopsLogin.asp" -->
<%
Dim MM_editAction
MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME"))
If (Request.QueryString <> "") Then
MM_editAction = MM_editAction & "?" & Server.HTMLEncode(Request.QueryString)
End If
' boolean to abort record edit
Dim MM_abortEdit
MM_abortEdit = false
%>
<%
If (CStr(Request("MM_insert")) = "form1") Then
If (Not MM_abortEdit) Then
' execute the insert
Dim MM_editCmd
Set MM_editCmd = Server.CreateObject ("ADODB.Command")
MM_editCmd.ActiveConnection = MM_BishopsLogin_STRING
MM_editCmd.CommandText = "INSERT INTO dbo.DeptData (Department, SubpageTitle, LinkDescription, URL, DateLastModified, ModifiedBy) VALUES (?, ?, ?, ?, ?, ?)"
MM_editCmd.Prepared = true
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 201, 1, 30, Request.Form("Department")) ' adLongVarChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 201, 1, 1000, Request.Form("SubpageTitle")) ' adLongVarChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param3", 201, 1, 1000, Request.Form("LinkDescription")) ' adLongVarChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param4", 201, 1, 500, Request.Form("URL")) ' adLongVarChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param5", 201, 1, 10, Request.Form("DateLastModified")) ' adLongVarChar
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param6", 201, 1, 50, Request.Form("ModifiedBy")) ' adLongVarChar
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
' append the query string to the redirect URL
Dim MM_editRedirectUrl
MM_editRedirectUrl = "adding_data_results.asp"
If (Request.Form<> "") Then
If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0) Then
MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.Form
Else
MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.Form
End If
End If
Response.Redirect(MM_editRedirectUrl)
End If
End If
%>
<%
Dim rs_Add_Data__MMColParam
rs_Add_Data__MMColParam = "1"
If (Request.QueryString("RecordID") <> "") Then
rs_Add_Data__MMColParam = Request.QueryString("RecordID")
End If
%>
<%
Dim rs_Add_Data
Dim rs_Add_Data_cmd
Dim rs_Add_Data_numRows
Set rs_Add_Data_cmd = Server.CreateObject ("ADODB.Command")
rs_Add_Data_cmd.ActiveConnection = MM_BishopsLogin_STRING
rs_Add_Data_cmd.CommandText = "SELECT ID, Department, SubpageTitle, LinkDescription, URL, DateLastModified, ModifiedBy FROM dbo.DeptData WHERE ID = ? ORDER BY ID DESC"
rs_Add_Data_cmd.Prepared = true
rs_Add_Data_cmd.Parameters.Append rs_Add_Data_cmd.CreateParameter("param1", 5, 1, -1, rs_Add_Data__MMColParam) ' adDouble
Set rs_Add_Data = rs_Add_Data_cmd.Execute
rs_Add_Data_numRows = 0
%>
<%
Dim MM_paramName
%>
<%
' *** Go To Record and Move To Record: create strings for maintaining URL and Form parameters
Dim MM_keepNone
Dim MM_keepURL
Dim MM_keepForm
Dim MM_keepBoth
Dim MM_removeList
Dim MM_item
Dim MM_nextItem
' create the list of parameters which should not be maintained
MM_removeList = "&index="
If (MM_paramName <> "") Then
MM_removeList = MM_removeList & "&" & MM_paramName & "="
End If
MM_keepURL=""
MM_keepForm=""
MM_keepBoth=""
MM_keepNone=""
' add the URL parameters to the MM_keepURL string
For Each MM_item In Request.QueryString
MM_nextItem = "&" & MM_item & "="
If (InStr(1,MM_removeList,MM_nextItem,1) = 0) Then
MM_keepURL = MM_keepURL & MM_nextItem & Server.URLencode(Request.QueryString(MM_item))
End If
Next
' add the Form variables to the MM_keepForm string
For Each MM_item In Request.Form
MM_nextItem = "&" & MM_item & "="
If (InStr(1,MM_removeList,MM_nextItem,1) = 0) Then
MM_keepForm = MM_keepForm & MM_nextItem & Server.URLencode(Request.Form(MM_item))
End If
Next
' create the Form + URL string and remove the intial '&' from each of the strings
MM_keepBoth = MM_keepURL & MM_keepForm
If (MM_keepBoth <> "") Then
MM_keepBoth = Right(MM_keepBoth, Len(MM_keepBoth) - 1)
End If
If (MM_keepURL <> "") Then
MM_keepURL = Right(MM_keepURL, Len(MM_keepURL) - 1)
End If
If (MM_keepForm <> "") Then
MM_keepForm = Right(MM_keepForm, Len(MM_keepForm) - 1)
End If
' a utility function used for adding additional parameters to these strings
Function MM_joinChar(firstItem)
If (firstItem <> "") Then
MM_joinChar = "&"
Else
MM_joinChar = ""
End If
End Function
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>GCFA: Update Data Files</title>
<link href="samples/OneColumn.css" rel="stylesheet" type="text/css" />
<style type="text/css" media="screen">
@import url("images/nav_bar.css");
</style>
<script language="JavaScript1.2" type="text/javascript" src="images/mm_css_menu.js"></script>
<script type="text/javascript">
<!--
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
//-->
</script>
</head>
<body class="oneColLiqCtrHdr" onload="MM_preloadImages('images/Slices/nav_bar_r2_c2_f2.gif','images/Slices/nav_bar_r2_c 3_f2.gif','images/Slices/nav_bar_r2_c5_f2.gif')">
<div id="container">
<div id="header">
<div id="#DataFiles_LOGO"></div>
</div>
<div id="mainContent">
<div id="FWTableContainer1445733177">
<table border="0" cellpadding="0" cellspacing="0" width="799">
<!-- fwtable fwsrc="nav_bar_revised.png" fwpage="Page 1" fwbase="nav_bar.gif" fwstyle="Dreamweaver" fwdocid = "1445733177" fwnested="0" -->
<tr>
<td><img src="images/Slices/spacer.gif" width="1" height="1" border="0" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="221" height="1" border="0" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="221" height="1" border="0" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="5" height="1" border="0" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="221" height="1" border="0" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="130" height="1" border="0" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="1" height="1" border="0" alt="" /></td>
</tr>
<tr>
<td colspan="6"><img name="nav_bar_r1_c1" src="images/Slices/nav_bar_r1_c1.gif" width="799" height="5" border="0" id="nav_bar_r1_c1" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="1" height="5" border="0" alt="" /></td>
</tr>
<tr>
<td rowspan="2"><img name="nav_bar_r2_c1" src="images/Slices/nav_bar_r2_c1.gif" width="1" height="25" border="0" id="nav_bar_r2_c1" alt="" /></td>
<td><a href="javascript:;" onmouseout="MM_swapImgRestore();MM_menuStartTimeout(1000)" onmouseover="MM_menuShowMenu('MMMenuContainer1015135953_0', 'MMMenu1015135953_0',6,24,'nav_bar_r2_c2');MM_swapImage('nav_bar_r2_c2','','images/Slices /nav_bar_r2_c2_f2.gif',1);"><img name="nav_bar_r2_c2" src="images/Slices/nav_bar_r2_c2.gif" width="221" height="24" border="0" id="nav_bar_r2_c2" alt="" /></a></td>
<td><a href="http://www.gcfa.org/Department_Data.aspx" target="_top" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('nav_bar_r2_c3','','images/Slices/nav_bar_r2_c3_f2.gif',1);"><i mg name="nav_bar_r2_c3" src="images/Slices/nav_bar_r2_c3.gif" width="221" height="24" border="0" id="nav_bar_r2_c3" alt="Department Data Files" /></a></td>
<td rowspan="2"><img name="nav_bar_r2_c4" src="images/Slices/nav_bar_r2_c4.gif" width="5" height="25" border="0" id="nav_bar_r2_c4" alt="" /></td>
<td><a href="http://www.gcfa.org/help_topics.html" target="_top" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('nav_bar_r2_c5','','images/Slices/nav_bar_r2_c5_f2.gif',1);"><i mg name="nav_bar_r2_c5" src="images/Slices/nav_bar_r2_c5.gif" width="221" height="24" border="0" id="nav_bar_r2_c5" alt="Help Topics" /></a></td>
<td rowspan="2"><img name="nav_bar_r2_c6" src="images/Slices/nav_bar_r2_c6.gif" width="130" height="25" border="0" id="nav_bar_r2_c6" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="1" height="24" border="0" alt="" /></td>
</tr>
<tr>
<td colspan="2"><img name="nav_bar_r3_c2" src="images/Slices/nav_bar_r3_c2.gif" width="442" height="1" border="0" id="nav_bar_r3_c2" alt="" /></td>
<td><img name="nav_bar_r3_c5" src="images/Slices/nav_bar_r3_c5.gif" width="221" height="1" border="0" id="nav_bar_r3_c5" alt="" /></td>
<td><img src="images/Slices/spacer.gif" width="1" height="1" border="0" alt="" /></td>
</tr>
</table>
<div id="MMMenuContainer1015135953_0">
<div id="MMMenu1015135953_0" onmouseout="MM_menuStartTimeout(1000);" onmouseover="MM_menuResetTimeout();"> <a href="http://www.gcfa.org/add_data.asp" target="_top" id="MMMenu1015135953_0_Item_0" class="MMMIFVStyleMMMenu1015135953_0" onmouseover="MM_menuOverMenuItem('MMMenu1015135953_0');"> Add Data </a> <a href="http://www.gcfa.org/update_data.asp" target="_top" id="MMMenu1015135953_0_Item_1" class="MMMIVStyleMMMenu1015135953_0" onmouseover="MM_menuOverMenuItem('MMMenu1015135953_0');"> Update Data </a> <a href="http://www.gcfa.org/delete_data.asp" target="_top" id="MMMenu1015135953_0_Item_2" class="MMMIVStyleMMMenu1015135953_0" onmouseover="MM_menuOverMenuItem('MMMenu1015135953_0');"> Delete Data </a> </div>
</div>
</div>
<br />
<br />
<br />
<br />
<br />
<strong>Enter the information you are wanting to add to our database:</strong><br />
</div>
<form ACTION="<%=MM_editAction%>" METHOD="POST" name="form1" target="_top" id="form1">
<table width="689" align="left">
<tr valign="baseline">
<td align="left" valign="top" nowrap="nowrap">Department:</td>
<td><label>
<input name="Department" type="text" id="Department" size="75" maxlength="500" />
</label></td>
</tr>
<tr valign="baseline">
<td align="left" valign="top" nowrap="nowrap">Subpage Title:</td>
<td><label>
<input name="SubpageTitle" type="text" id="SubpageTitle" size="75" maxlength="1000" />
</label></td>
</tr>
<tr valign="baseline">
<td align="left" valign="top" nowrap="nowrap">Link Description:</td>
<td><label>
<input name="LinkDescription" type="text" id="LinkDescription" size="75" maxlength="1000" />
</label></td>
</tr>
<tr valign="baseline">
<td align="left" valign="top" nowrap="nowrap">URL:</td>
<td><input name="URL" type="text" id="URL" size="75" maxlength="500" /></td>
</tr>
<tr valign="baseline">
<td height="24" align="left" valign="top" nowrap="nowrap">Date Modified:</td>
<td><input name="DateLastModified" type="text" id="DateLastModified" size="75" maxlength="10" /></td>
</tr>
<tr valign="baseline">
<td align="left" valign="top" nowrap="nowrap">Modified By:</td>
<td><label>
<input name="ModifiedBy" type="text" id="ModifiedBy" size="75" maxlength="50" />
</label></td>
</tr>
<tr valign="baseline">
<td height="20" align="left" valign="top" nowrap="nowrap"> </td>
<td> </td>
</tr>
<tr valign="baseline">
<td align="left" valign="top" nowrap="nowrap"><p> </p></td>
<td align="left" valign="top" nowrap="nowrap"><label>
<input type="submit" name="Add_Info" id="Add_Info" value="Add data to database now!" />
</label></td>
</tr>
</table>
<p> </p>
<p><br />
<br />
<br />
<br />
</p>
<p> </p>
<p> </p>
<p> </p>
<p><br />
</p>
<input type="hidden" name="MM_insert" value="form1" />
</form> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
</div>
<div id="footer">
<p align="center">This site is maintained by the General Council on Finance and Administration <script language="JavaScript">
var today_date= new Date()
var year=today_date.getFullYear()
document.write(year)
//--> </script>
©</p>
<!-- end #footer --></div>
<!-- end #container --></div>
</body>
</html>
<%
rs_Add_Data.Close()
Set rs_Add_Data = Nothing
%>
My CSS Pages:
@charset "utf-8";
body {
/*background:#ffffff;*/
margin: 0; /* it's good practice to zero the margin and padding of the body element to account for differing browser defaults */
padding: 0;
text-align: center; /* this centers the container in IE 5* browsers. The text is then set to the left aligned default in the #container selector */
/*color: #000000;*/
width: 100%;
font-family: Verdana, Arial, Helvetica, sans-serif;
border-top-style: none;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
background-repeat: no-repeat;
background-position: right top;
background-image: url(../images/body_bg.jpg);
.oneColLiqCtrHdr #container {
width: 99%; /* the auto margins (in conjunction with a width) center the page */
/* border: 1px solid #000000;*/
text-align: left; /* this overrides the text-align: center on the body element. */
margin-top: 0;
margin-right: auto;
margin-bottom: 0;
margin-left: auto;
background-color: ;
background-repeat: no-repeat;
background-position: right top;
.oneColLiqCtrHdr #header {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight: 700;
color: #FFFFFF;
font-size: 18px;
background-repeat: no-repeat;
height: 124px;
width: 100%;
background-image: url(../images/dept_data_files_logo.jpg);
padding: 0px;
/*background-color: #67120D;*/
.oneColLiqCtrHdr #mainContent {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
color: #3C0D0D;
font-weight: 700;
padding-top: 0;
padding-right: 0px;
padding-bottom: 0;
padding-left: 0px;
margin: 0px;
width: 760px;
.oneColLiqCtrHdr #footer {
padding: 0 10px;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight: 700;
color: #FFFFFF;
background-color: #000000;
/*width:780px;*/
.oneColLiqCtrHdr #footer p {
margin: 0; /* zeroing the margins of the first element in the footer will avoid the possibility of margin collapse - a space between divs */
padding: 10px 0; /* padding on this element will create space, just as the the margin would have, without the margin collapse issue */
h1 {
color:#FFFFFF;
font-size: 36px;
h2,h3 {
10px;
8px;
color: #000000;
#DataFiles_LOGO{
height:127px;
width: 740px;
background-repeat: no-repeat;
background-image: url(../images/dept_data_files_logo.jpg);
background-position: left top;
padding: 0px;
margin: 0px;
top: 0px;
float: left;
And my Navigation CSS:
td img {
/* Another Mozilla/Netscape bug with making sure our images display correctly */
display: block;
#FWTableContainer1445733177 {
/* The master div to make sure that our popup menus get aligned correctly. Be careful when playing with this one. */
position:relative;
margin:0px;
width:799px;
height:30px;
text-align:left;
#MMMenuContainer1015135953_0 {
/* This ID is related to the master menu div for menu MMMenuContainer1015135953_0 and contains the important positioning information for the menu as a whole */
position:absolute;
left:7px;
top:29px;
visibility:hidden;
z-index:300;
#MMMenu1015135953_0 {
/* This class defines things about menu MMMenu1015135953_0's div. */
position:absolute;
left:0px;
top:0px;
visibility:hidden;
background-color:#ffffff;
border:1px solid #000000;
width:208px;
height:76px;
.MMMIFVStyleMMMenu1015135953_0 {
/* This class determines the general characteristics of the menu items in menu MMMenu1015135953_0 */
border-top:1px solid #000000;
border-left:1px solid #000000;
border-bottom:1px solid #ffffff;
border-right:1px solid #ffffff;
width:208px;
height:26px;
voice-family: "\"}\"";
voice-family:inherit;
width:200px;
height:18px;
.MMMIVStyleMMMenu1015135953_0 {
/* This class determines the general characteristics of the menu items in menu MMMenu1015135953_0 */
border-top:0px;
border-left:1px solid #000000;
border-bottom:1px solid #ffffff;
border-right:1px solid #ffffff;
width:208px;
height:25px;
voice-family: "\"}\"";
voice-family:inherit;
width:200px;
height:18px;
#MMMenu1015135953_0_Item_0 {
/* Unique ID for item 0 of menu MMMenu1015135953_0 so we can set its position */
left:0px;
top:0px;
#MMMenu1015135953_0_Item_1 {
/* Unique ID for item 1 of menu MMMenu1015135953_0 so we can set its position */
left:0px;
top:26px;
#MMMenu1015135953_0_Item_2 {
/* Unique ID for item 2 of menu MMMenu1015135953_0 so we can set its position */
left:0px;
top:51px;
#MMMenuContainer1015135953_0 img {
/* needed for Mozilla/Camino/Netscape */
border:0px;
#MMMenuContainer1015135953_0 a {
/* Controls the general apperance for menu MMMenuContainer1015135953_0's items, including color and font */
text-decoration:none;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:14px;
color:#ffcc33;
text-align:center;
vertical-align:middle;
padding:3px;
background-color:#000000;
font-weight:bold;
font-style:normal;
display:block;
position:absolute;
#MMMenuContainer1015135953_0 a:hover {
/* Controls the mouse over effects for menu MMMenuContainer1015135953_0 */
color:#ffcc33;
background-color:#990000;Glad you sorted this out.
You might want to mark this as Answered so folks trying to help answer questions won't have to click on this link now. Thanks!
E. Michael Brandt
www.divahtml.com
www.divahtml.com/products/scripts_dreamweaver_extensions.php
Standards-compliant scripts and Dreamweaver Extensions
www.valleywebdesigns.com/vwd_Vdw.asp
JustSo PictureWindow
JustSo PhotoAlbum, et alia -
How to package instrument driver in the user.lib or instr.lib directory
Hey guys,
I currently am using bunch of instrument drivers in my project.
In the VI form it works fine, but I noticed that once converted to an executable,
there are errors regarding the DLL that the drivers are calling.
Apparently the driver VI check if its being called in an VI or executable based on the current directory.
I dont think this is good/correct programming to begin with... but anyways since this driver is
saved in the instr.lib directory of LabVIEW, when I call it from the executable the default path becomes
XXX.exe/1abvi3w/instr.lib/.../.../VI above.vi
I saw this post which talks about how vi's in instr.lib and user.lib will get the path 1abvi3w in an executable but never talked about how to deal with it.
so my question is can i solve this problem smoothly without copying the entire driver.lvlib into my project and
editing the VI above? i am fine with creating wrappers for driver vi's but would to like to avoid editing the driver vi's themselves.doradorachan wrote:
I dont think this is good/correct programming to begin with...
I don't disagree, but there is a reason this code was written like that (you might note that it doesn't actually work) - before 2009, EXEs were built as flat directory, so stripping twice would bring you to the folder. Because of the addition of libraries, where different files have different names, this was no longer possible, so 2009 builds the EXE as a zipped hierarchy of folders, which is why the check for a folder succeeds even inside the EXE.
There are a couple of things you can do:
Replace the VI path with the Application Directory primitive. This is designed to function differently in an EXE. Understandably, you don't want to do that.
Check the 8.x checkbox in the advanced page of the build settings. This will make the code work correctly, but if there's LVOOP code with VIs of the same name anywhere, it will create extra folders that you need to move around with the EXE.
Add the driver to the project (just the lvproj, don't actually copy the files) and then set an explicit destination in the build for its VIs as an LLB in the data folder. This will place the driver VIs in an wLLB, which is external to the EXE and should then strip correctly. I can't say I have much experience with this, but I'm assuming it should also work with code that was originally in user.lib. This is probably the cleanest solution in terms of number of files because you only have one extra file.
Try to take over the world! -
Urgent - INSTR() Functions in OBIEE?
Hi All,
I just got some very good help from the DB experts on these forums about solving a problem with a table join that I had.
But now I have this SQL query and I'm trying to figure out how to implement this in OBIEE:
select *
from TABLE1,TABLE2
where instr(TABLE2.USER_ID,TABLE1.USER_ID) > 0
My question is how do I implement this instr() function on OBIEE? I checked physical and business model mapping layers in the repository and it does not allow me to configure this type of join. Is it possible to configure this type of join function to be invoked automatically everytime a user runs a certain query in OBIEE (as if it was a natural join)?
Any help would be greatly appreciated.
AlanHi,
You can refer the below links,
Substring instr issue in obiee
extract a string from a string
http://108obiee.blogspot.in/2009_10_01_archive.html
Award points it is useful.
Thanks,
satya -
DBMS_LOB.INSTR - Searching for a pattern
Hi
I have a program supporting several databases. F.ex SQL2000 and Oracle 8/9.
The field in question, text, might contain a lot of characters. In Oracle, it's a CLOB,
on SQL2000 it's a varchar. It is not possible for me to alter the database-structure in
any ways at this moment. The database-schema is locked.
My question is pretty simple, you have probably seen it before.
In SQL2000 I can use this query:
select count(*) from crm5.text where text like 'n%'.
The result returned = 8.
The same on Oracle will be somewhat like:
select count(*) from crm5.text where dbms_lob.instr( text, 'n') > 0
The result returned = 29.
The databases has the same data.
It seems to me that the dbms_lob.instr
does a (case-sensitive) query like this:
select count(*) from crm5.text where text like '%n%
Is this the right assumption? How can I get the correct number
of rows and do the search case-insensitive at the same time not
killing the performance of the database? We use a pretty smart
little thing on "normal" LIKE. But how can we do this with the
CLOB?
Regards,
IvarFound the solution.
On Oracle 9, use LIKE as you want.
On Oracle 8, use
select count(*) from crm5.text
where dbms_lob.instr( text, 'N') = 1
or dbms_lob.instr( text, 'n') = 1.
Ivar (same account, different mail-address). -
Question marks in instrumentation library
I'm running labview 5.1. All of a sudden, when I pop up my functions palette, the instrument drivers show up as a question mark. I've got all the files in the proper directory: \labview\instr.lib
I know it's a dumb questions, but I can't figure how to set it back.Be sure the palette set you have selected is the default one, and that dir.mnu is in your instr.llb directory, if not, you can create a new palette set and link the new menu to that directory, once you do that, the icons should appear again...
Good luck
Maybe you are looking for
-
All text in all email are blank, can't view attachments.
After last osx update 10.5.6 I noticed a problem with my email. I have 2 email accounts in mail 3.5 The 1st works fine, the 2nd account lost all text in all email in in-box. Also all attachments are blank. I've tried forwarding the email to another a
-
SAP Netweaver 2004S_SR1 trial version installation error
I'm gettin the following error when i try to install the Netweaver trial version on Windows. I am launching sapinst and I get the following: GUI engine: no engine connected - waiting for connection on host <hostname> on port 21200 How to solve this i
-
IPod not showing in my computer or ITunes
I have had my IPod video 30Gb since Christmas 2005 and have had no problems at all with it until now... The last time I connected it to my PC it just showed the battery charging symbol and it never appeared in ITunes. I am doubly confused because my
-
Cannot close notification in workflow-Please help
We had some notifications that got stuck for new hires and we manually processed them through IQS22 but we are not able to close the notification after processing those new hires! Does anyone happen to know any transaction/tables where I could go by
-
Building DMI pool. & ms-6330
Hello! I have the K7T Turbo (MS-6330) MB with an Athlon at 1200 MHz The problem is that i cannot make it boot...i always get this message- Building DMI pool. and the computer seems to crash trying to solve th eproblem, i already cleared the CMOS, but