DBMS SCHEDULER string input multiple terms of simple step
Hi all
I have the following situation:
Using DBMS SCHEDULER, I'm generating the string which consists of main parts:
- step 1 - PRNT_SESS_OPEN
- step 2 - parallel execution of step 1... to STEPx
- step 3 - PRNT_SESS_CLOSE
Links between steps represents the channel rules.
I want to start 3rd step just in case all of the previous steps (step 1... to STEPx) are finished.
Is there a way to define all the rules of the input string for the PRNT_SESS_CLOSE step like that?
Thank you
Michal
Hello
Yes, the conditions of the State to step in chain can be multiple:
"' Completed Step1 and step 2 complete and... stepx finished"
Tags: Database
Similar Questions
-
How to convert string input streams
Can someone tell me how to convert string input streams...
There are multiple ways. I will list down few of them.
With the help of the old solution and standard java.
public
static
String fromStream(InputStream in)
throws
IOException
{
BufferedReader reader =
new
BufferedReader(
new
InputStreamReader(in));
StringBuilder out =
new
StringBuilder();
String line;
while
((line = reader.readLine()) !=
null
) {
out.append(line);
}
return
out.toString();
}
return
sb.toString();
If you use Google-Collections/guava-
InputStream stream = ...
String content = CharStreams.toString(
new
InputStreamReader(stream, Charsets.UTF_8));
Closeables.closeQuietly(stream);
If you use the common Apache library... then it is worthwhile.
StringWriter writer =
new
StringWriter();
IOUtils.copy(inputStream, writer, encoding);
String theString = writer.toString();
Quick way but only work during deserialization.
String result = (String)
new
ObjectInputStream( inputStream ).readObject();
Note: ObjectInputStream is on deserialization and the flow of data must respect the Protocol of serialization to work, which may not always true in all cases.
Ultimately, the most effective solution and only in two lines using java class Scanner.
Tricky is to remember the \A regex that matches the beginning of the entry. It actually indicates Scanner to mark all of the flow, from start to beginning next (illogical).
public
static
String convertToString(InputStream in) {
java.util.Scanner s =
new
java.util.Scanner(in).useDelimiter(
"\\A"
);
return
s.hasNext() ? s.next() :
""
;
}
-
DBMS Scheduler Job will run but did not finish.
Hello!
I created a job that is supposed to run a stored procedure. It works ok but it looks like no it's over... How do I know? My procedure records each action and after execution of the task, I see only one line of paper. One from the code...
It is the stored procedure code:
create or replace PROCEDURE get_survey_data AS dir_name VARCHAR2(100); nip_no VARCHAR2 (1024); employee_name VARCHAR2 (1024); company_name VARCHAR2 (1024); hire_date VARCHAR2 (1024); agreement_date VARCHAR2 (1024); stmnt_1 VARCHAR2 (5000); stmnt_2 VARCHAR2 (5000); t_check NUMBER; s_id NUMBER; ecode NUMBER; emesg VARCHAR2 (200); BEGIN DIR_NAME := 'F:\SURVEY_FILES\IN'; --pobranie ID z sekwencji SELECT adecco_apex.survey_job_seq.NEXTVAL INTO s_id FROM DUAL; INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Rozpoczynam Survey JOB' ); COMMIT; --SPRAWDZENIE CZY ISTNIEJE TABELA SELECT COUNT (*) INTO t_check FROM all_tables WHERE owner = 'ADECCO_APEX' and table_name = 'EXT_IN_INVOICE'; IF t_check > 0 THEN EXECUTE IMMEDIATE 'DROP TABLE ADECCO_APEX.EXT_IN_INVOICE'; END IF; -- stmnt_1 := 'CREATE TABLE ADECCO_APEX.EXT_IN_INVOICE(R NUMBER,FIELD_NAME VARCHAR2(255 BYTE),FIELD_VALUE VARCHAR2(255 BYTE)) ORGANIZATION EXTERNAL( TYPE ORACLE_LOADER DEFAULT DIRECTORY SURVEY_IN ACCESS PARAMETERS ( RECORDS DELIMITED BY NEWLINE CHARACTERSET EE8MSWIN1250 STRING SIZES ARE IN BYTES NOBADFILE NODISCARDFILE NOLOGFILE FIELDS TERMINATED BY '';'' OPTIONALLY ENCLOSED BY ''"'' AND ''"'' NOTRIM MISSING FIELD VALUES ARE NULL ( "R" RECNUM, "FIELD_NAME" CHAR, "FIELD_VALUE" CHAR )) LOCATION (SURVEY_IN:'''; stmnt_2 := ''')) REJECT LIMIT UNLIMITED NOPARALLEL NOMONITORING'; --sprawdzenie czy sa jakies pliki SELECT COUNT (*) INTO t_check FROM (SELECT SUBSTR (ret_val, LENGTH (UPPER (dir_name)) + 2, LENGTH (ret_val) ) file_name FROM TABLE (SYS.ls_directory (UPPER (dir_name))) WHERE UPPER (ret_val) LIKE '%.CSV' AND ret_val NOT LIKE '%OUT_SURVEY.CSV'); IF t_check > 1 THEN INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Rozpoczynam petle po plikach .csv z folderu IN' ); COMMIT; FOR i IN (SELECT SUBSTR (ret_val, LENGTH (UPPER (dir_name)) + 2, LENGTH (ret_val) ) file_name FROM TABLE (SYS.ls_directory (UPPER (dir_name))) WHERE UPPER (ret_val) LIKE '%.CSV' AND ret_val NOT LIKE '%OUT_SURVEY.CSV') LOOP --DBMS_OUTPUT.ENABLE (); --DBMS_OUTPUT.PUT_LINE(stmnt_1 || i.file_name || stmnt_2); BEGIN EXECUTE IMMEDIATE stmnt_1 || i.file_name || stmnt_2; EXCEPTION WHEN OTHERS THEN INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Blad podczas tworzenia tabeli: ' || ecode || '-' || emesg ); COMMIT; END; INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Czytam plik: ' || i.file_name ); COMMIT; EXECUTE IMMEDIATE 'SELECT FIELD_VALUE FROM ADECCO_APEX.EXT_IN_INVOICE WHERE R = 2' INTO company_name; EXECUTE IMMEDIATE 'SELECT FIELD_VALUE FROM ADECCO_APEX.EXT_IN_INVOICE WHERE R = 6' INTO nip_no; EXECUTE IMMEDIATE 'SELECT FIELD_VALUE FROM ADECCO_APEX.EXT_IN_INVOICE WHERE R = 9' INTO employee_name; EXECUTE IMMEDIATE 'SELECT FIELD_VALUE FROM ADECCO_APEX.EXT_IN_INVOICE WHERE R = 11' INTO hire_date; EXECUTE IMMEDIATE 'SELECT FIELD_VALUE FROM ADECCO_APEX.EXT_IN_INVOICE WHERE R = 12' INTO agreement_date; --DBMS_OUTPUT.PUT_LINE(to_date(hire_Date,'YYYY-MM-DD')); --DBMS_OUTPUT.PUT_LINE(to_date(agreement_Date,'YYYY-MM-DD')); EXECUTE IMMEDIATE 'TRUNCATE TABLE ADECCO_APEX.STG_SURVEY'; BEGIN INSERT INTO adecco_apex.stg_survey (nip, employee_name, company_name, hire_date, agreement_date ) VALUES (nip_no, employee_name, company_name, hire_date, agreement_date ); COMMIT; EXCEPTION WHEN OTHERS THEN INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Blad podczas dodawania wierszy do tabeli STG: ' || ecode || '-' || emesg ); COMMIT; END; BEGIN MERGE INTO adecco_apex.survey a USING (SELECT nip, employee_name, company_name, hire_date, agreement_date FROM adecco_apex.stg_survey) b ON (a.nip = b.nip AND a.employee_name = b.employee_name) WHEN MATCHED THEN UPDATE SET a.hire_date = b.hire_date, a.agreement_date = b.agreement_date WHEN NOT MATCHED THEN INSERT (nip, employee_name, company_name, hire_date, agreement_date) VALUES (TO_NUMBER (b.nip), b.employee_name, b.company_name, TO_DATE (b.hire_date, 'YYYY-MM-DD'), TO_DATE (b.agreement_date, 'YYYY-MM-DD')); COMMIT; EXCEPTION WHEN OTHERS THEN INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Blad podczas merge do tabeli docelowej: ' || ecode || '-' || emesg ); COMMIT; END; EXECUTE IMMEDIATE 'DROP TABLE ADECCO_APEX.EXT_IN_INVOICE'; --Wygenerowanie pliku wynikowego INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Generuje plik wynikowy OUT_SURVEY.CSV' ); COMMIT; BEGIN adecco_apex.dump_table_to_csv ('ADECCO_APEX.SURVEY', 'SURVEY_OUT', 'OUT_SURVEY.CSV' ); EXCEPTION WHEN OTHERS THEN INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Blad podczas generowania pliku OUT: ' || ecode || '-' || emesg ); COMMIT; END; INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Zamykam plik: ' || i.file_name ); COMMIT; utl_file.fremove('SURVEY_IN', i.file_name); END LOOP; ELSE INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Brak plikow .CSV w folderze IN' ); COMMIT; END IF; INSERT INTO adecco_apex.survey_job_log (ID, start_date, description ) VALUES (s_id, SYSTIMESTAMP, 'Koncze Survey JOB' ); COMMIT; END;
What can be wrong?
Help gurus!
Kind regards
PsmakR
Hello!
This stored procedure runs fine when Im running it but the thing is that DBMS Scheduler starts the application and then I do not know... So basically I do not understand how the profile can help me in this case?
With respect,
PSmakR
-
Microsoft fix - it message 'string input not in the right format. '
Microsoft fix - it message 'string input not in the right format", I have uninstalled & reinstalled. always the same problem on all fix - its
Hello
The following forum would be more suited for this question.
Microsoft Fix it Center - NOT for general support questions
http://social.Microsoft.com/forums/en-us/fixitcenter/threads -
I have a VIA card mother U8668-D and in Device Manager it is said that the "Multimedia Audio Controller", "PCI input device" and "PCI Simple Communications controller" function. I posted a link to the image below.
Nevermind, I deleted the image by accident. Oops.
https://SkyDrive.live.com/redir?RESID=D50158D65A52CBBA! 1928 & authkey =! AKdLQ4hGMOynvnc
If the manufacturer of the motherboard doesn't provide drivers specific win7 there is none.
If there is the bit Vista drivers ' appropriate ness, what they would usually work
-
Assign activity erros with the XPath query string returns multiple nodes.
It comes to xml message we have with two elements < corecom:BusinessScopeReference > inside. How to assign the first < corecom:BusinessScopeReference > value of the other variable in the string.
< variableentree >
< xmlns:corecom fault = "http://xmlns.oracle.com/EnterpriseObjects/Core/Common/V2" xmlns:default = "http://xmlns.oracle.com/EnterpriseObjects/Core/Common/V2" xmlns = "http://xmlns.oracle.com/EnterpriseObjects/Core/Common/V2" >
< corecom:EBMReference >
< corecom:BusinessScopeReference >
< corecom:ID xmlns = "http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/CustomerParty/V2" xmlns:ebo = "http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/CustomerParty/V2" >
Account: NUANCE (AIMA 17N9IL) < / corecom:ID >
< / corecom:BusinessScopeReference >
< corecom:BusinessScopeReference >
< corecom:ID xmlns = "http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/CustomerParty/V2" xmlns:ebo = "http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/CustomerParty/V2" >
CREATECUSTOMERPARTYMSG/39303832313732363632373734303732 < / corecom:ID >
< / corecom:BusinessScopeReference >
< / corecom:EBMReference >
< / failures >
< / variableentree >
When I use the sub element assign, I get the error: "XPath query string returns multiple nodes." How to point to the specific element in the table.
< assign the name 'AssignId' = >
< copy >
< variable from = part "Variableentree" = "Fault."
Query = "/ corecom:Fault / corecom:EBMReference / corecom:BusinessScopeReference / corecom:ID" / >
< variable = "business_object_name" / >
< / copy >
< / assign >
Please suggest.Check if this useful BPEL foreach
-
How to mixing to mastering simple steps
How to mixing to mastering a few simple steps. I need instructions step by step. Click here klik here etc.
Search the Web, it has been documented in great detail.
also, what platform do you use?
-
Simple question: how to divide the string into multiple lines concatenated?
Hi people,
Maybe it's an easy question.
How to split a string that is concatenated into multiple lines by using the SQL query?
ENTRY:
Delimiter = ', '.select 'AAA,BBB,CC,DDDD' as data from dual
Expected results:
I'm looking for something nice to feature "an opposite to «sys_connect_by_path»»data ------------ AAA BBB CCC DDDD
Thank you
Tomaswith t as (select 'aaaa,,bbbb,cccc,dddd,eeee,ffff' as txt from dual) -- end of sample data select REGEXP_SUBSTR (txt, '[^,]+', 1, level) from t connect by level <= length(regexp_replace(txt,'[^,]*'))+1 REGEXP_SUBSTR(TXT,'[^,]+',1,LE ------------------------------ aaaa bbbb cccc dddd eeee ffff
-
Hello
This is a fundamental question, no doubt, but it gives me a lot of trouble. I want to capture the user input double floating point via a digital control (azimuth & site), take double that and move the number as a hexadecimal string specifying a width of 16. These strings are then concatenated together, as well as a chain of command in hexadecimal (0005 0000) and sent on their merry way as a UDP packet. If I just use the string constants displayed in the hexadecimal form that everything works fine. When I try to use the code below, if I enter 0,0, I expect a hexadecimal string of 16 zeros. Instread, I get a recurring pattern of 30 years (i.e., 3030 3030...), the 0 in hexadecimal ASCII.
Any help would be greatly appreciated.
Thank you
Bill
Simply convert the number to a string. You want the real binary values in a string format, not ASCII values.
-
Hello:
I take an ASCII using a chain control of entry, and then help convert the string to byte array to get the bytes of each character. From there on, it's my goal to browse the byte array and get the bits of each octet so that I can manipulate them. I'm having a time hard to find how to do this last part - I tried a few other topics on this forum, but they just link to screw that I don't understand. I would be very happy if someone could point me in the right direction.
Thank you.
If you try just to get the bits?
I hope this helps clarify:
-
HP h8-1022: inputs multiple Windows Boot Manager.
I have multiple instances of the Windows boot manager listed in chapter Sources of UEFI boot when I press ESC and F9 to list the devices to boot.
I just cloned my original 2 TB drive on a 480 GB SSD with a lot of issues now resolved. The computer starts very well now, but these only entered multiple occurred when I had two disks connected each with their SYSTEM partition intact. (After all, it's a clone)
When I look at things with EasyBCD I get this:
So I can't remove redundant entries here. I'm puzzled!
Can someone tell me how to remove the extra entries in the Windows Boot Manager?
Hello
What you see might be the result of the number of active devices UEFI (all sources) on your PC. Windows 7 not a UEFI system.
On my PC, active residual Windows to UEFI devices previously installed boot manager entries can be removed by resetting the default BIOS entries.
-
DBMS Scheduler - limiting execution of work
Hi all
I have a specific question about Oracle DBMS_SCHEDULER and need advice on the forum. Database version is 10.2.0.4
I have a job that is supposed to work every day at 23:00. This Scheduler calls a procedure for moving data. The duration of the procedure (according to the data) is unknown.
My question is, if the work of day 1 continues to operate without interruption more than 25 hours, will be the 2nd day of employment will be triggered?
What are the options to ensure at any time that a job is running. According to the logic of the procedure, avoid at any time more than one execution of this procedure.
Thanks in advance
Hello
If the following schedule of work is be so work is still in progress (from the previous list), then the new instance of the task will start as soon as the previous instance ends.
For example:
-First of all in employment: 13/03/2014 at 23:00
The work takes 25 hours to complete: 15/03/2014 12 am (midnight)--> the second instance of the job begins on this date.
-
Avoid typing the same string in multiple expressions
Say have some settings in the camera in Comp01 associated with other parameters in Comp01Main.
For example:
Focus of camera Comp01 has this expression:
COMP ('Comp01Main'). Layer ("Camera01") .transform .pointOfInterest
and the Y Rotation:
COMP ("Comp01Main"). Layer ("Camera01") .transform .yRotation
and so on...
What should I do to avoid typing the expression "Comp01Main" for each of these expressions? How can I configure a controller to easily change the text "Comp01Main" in "Comp02Main" (for example) without going into each of them and make the change?
I tried to insert the text "Comp01Main" in the Source text of a TextLayer parameter and then change these expressions for:
var a = thisComp.layer("TextLayer").text.sourceText;
model (a).layer("Camera01").transform.pointOfInterest
var a = thisComp.layer("TextLayer").text.sourceText;
model (a).layer("Camera01").transform.yRotation
and so on...
But it does not work.
Any ideas?
I think it will work if you change this:
var a = thisComp.layer("TextLayer").text.sourceText;
to do this:
var a = thisComp.layer("TextLayer").text.sourceText.value;
You can also put the whole expression in the text of the text layer and use eval() to evaluate the expression once you recover.
Depending on your situation, it might be simpler (selector) link the parameters into a computer directly on the same settings in the other computer.
Dan
-
Loop through the string with multiple replaced Conditions
I'm looking for loop through a url string to enter analysis of http:// , www.twitter.com and twitter.com.
I thought first use this:
< cfset form.mystring = REPLACENOCASE (form.mystring, "http://","", 'One' "")
AND REPLACENOCASE (form.mystring, "www.twitter.com", "", 'One') >.
I realized that this won't work of course.
In addition, using a cfif-cfelseif you will remove in this case a a condtion, but not several condition.
You will need to use a cfloop, I think. Any suggestions on the syntax. Thank you
If you can not do:
replacelist (LCase (Form.myString), 'http://, www.twitter.com, twitter.com', ',')
?
-
Satellite L650 - 10 H - inputs multiple Win 7 in the Boot Manager
I have Toshiba Satellite L650 - 10H and I have recently reinstalled my Win 7 64 bit.
There is no problem at all except that initially to laptop, I get this [http://tinypic.com/r/se7uja/6].3 Win 7 entries in the Boot Manager
I always choose the first and all is well.
It's like the old copy of win does not delete but one that I formatted disks...Y at - it an option to get rid of him?
I don't mind reinstalling again if I know it will help.Hello
I seems that Boot Manager Windows 7 contains three entries and the other two entries are useless.
I think you can remove the last two entries in the Boot Manager.
How to do this?
Well, I m using the EasyBCD software.
It is a free tool and you can easily manage this settings.After installation, start the tool.
In EasyBCD toolbar, you can check the option called Add/Remove entries.
Well, I think that here you should be able to remove the last two entries.
Maybe you are looking for
-
Re: Tecra A9-not of sound with Win 7
Hello I installed Windows 7 and everything works fine except the sound. Sound card for Windows 7 driver is already installed. The speakers and the microphone is detected, but I can't hear anything. I read that the update of the BIOS can help... Thank
-
Windows (in Windows 7 and Vista) search will find only a partial file name (and the file content I guess) match if the text is the beginning of the string. He won't find a string in a file (the file content?) name. This diminshes greatly the value of
-
My battery on my compaq presario cq56 is not recognized. When I ran the test on HP support assistant, he says take the battery off and then powered off and that did not help. He said to ensure that the latest version of the BIOS battery has been inst
-
BlackBerry Smartphones BB facebook app
I deleted the icon of facebook who settled with my BB torch by mistake. The application gave me a number of options including sending photos and messages, but now I can visit his FB profile by research. Can someone tell me how can we recover the FB i
-
My Windows 7 Home Premium activate after that I have re-installed Windows. ERROR 0XC004E003
I reinstalled Windows 7 Home Premium on my computer and I try to turn it on, but I get ERROR 0XC004E003 during the activation process. I'm NOT have the possibility to call to activate only online activation there. It's the same Windows 7 that came pr