How can i make the select-option selection screen use screen layout?
I want to make the selection screen like follows.
no: xxxxxx ~ xxxxxx.
in the screen painter.
can any expert tell me.
thank you very much.
Hi,
In layout screen for description use text box and for input fields
use two i/o box.Try follow like as bello code
For ex: you are going to give date as a select-option:
textbox input/out field box textbox input/out field box
date : fkdat-low to fkdat-high
in data declaretion:
ranges: fkdat for vbrk-fkdat.
in select query where statement:
where date ge fkdat-low
and date le fkdat-high.
Regards,
Ramya.
Similar Messages
-
How can we make the selected Debug User Agent Netscape 7.0 stick?
To get into http://gap.com I have to go to the Debug menu, choose User Agent and choose Netscape 7.0.
It works Ok.
Then I quit Safari. Get back into Safari. User Agent is back to Automatically Chosen, and gap.com to not working.
How can we make the selected User Agent stick?
Thanks,
RobertoUnfortunately, I don't think there is an automated way of going about this. To begin with, the 'Debug' menu was never meant to be user accessible in the most common context.
However, that said, you could lessen the pain by assigning a keyboard shortcut to the 'Netscape 7.0' menu-item in the 'Keyboard & Mouse' preference pane (under the 'Keyboard Shortcuts' tab). Hope that helps, somewhat.
Yang -
I had to re-install XP on my laptop. I then installed itunes again. Now I want to restore my music from backup CD's. But the option device under file is greyed out. I can't select restore from backup. How do I make the restore option active? i have an IPOD nano.
I think it's QuickTime player causing the problem, when I try to open it I get the windows error that an error has occured
Let's try swapping out your QuickTime again, taking a few extra explicit precautions this time.
Head into your Add/Remove programs. uninstall QuickTime.
Next, we’ll manually remove any leftover program files and folders.
1. On the Start menu, click My Computer (or double-click My Computer on the Desktop).
2. In My Computer, open Local Disk.
3. Open Program Files.
4. Right-click on the QuickTime folder and click Delete from the shortcut menu.
5. Navigate to C:\Windows\system32\.
6. Remove the files QuickTime.qts and QuicktimeVR.qtx. (If “Hide filename extensions for known file types” is enabled on the PC, then those two files will appear as “QuickTime” and QuickTimeVR”.)
7. Restart your computer.
Now download and save a copy of the latest standalone QuickTime installer to your hard drive. (We'll run the install from there rather than online.)
Latest Quicktime Installers … get the one that doesn’t mention iTunes
Switch off antivirus and antispyware applications prior to the install. Start the install by doubleclicking the QuickTimeInstaller.exe.
If that install goes through okay, restart the PC and try launching iTunes again. Does your iTunes launch properly now?
(If you get an error message on the QuickTime uninstall or standalone reinstall, let us know what it says. Include error message numbers if you're getting any.) -
How can we pass the select-option value to modulepool program?
hi,
how can we pass the select-option value to modulepool program ?
Because if i declared select-options in executable program and i used SSCRFIELDS to define push buttons in selection screen.
My requirement if enter the values to select-options and press UPDATE pussbotton then i want call screen which contains tablecontrol.
How i get select-option values to PAI of call screen for getting the data from database table to my internal table?Oh I thought that you have selection-screen and again you are working on dialog programming.
if you want to use select-option directly in module pool then it is not possible.
but you can do other way.
create two varaiables
data : v_kun_low like kna1-kunnr,
v_kun_high like kna1-kunnr.
use these two variables in layout ,let user knows that he can not give options like gt,lt,eq ,it will be always BT.
and also when you see normal report program,you can use multiple values in either low or high,but here it is not possibel.
use can enter only low value and high value.
when you come to program point of view
declare one range
ranges r_kunnr for kna1-kunnr.
do the coding like
r_kunnr-low = v_kun_low.
r_kunnr-high = v_kun_high.
r_kunnr-options = 'BT'.
r_kunnr-sign = 'I'.
append r_kunnr.
now you can use r_kunnr in select query ,it will work like select-option.
other than this there is no option.
Thanks
Seshu -
How can I access the selected element of a DropDownByIndex-box?
Hi,
I want to create a WebDynpro with two web services. I created the first request with the first web service and the results are displayed in a DropDownByIndex-Box. Now the user should choose one of the results and I would like to use this for the request with my second web service. How can I access the selected Element of a DropDownByIndexBox in the Code?
Thank you!!
JuliaHi Julia,
when user select one element in drop down it automatically set lead selection of node binded to dropdown.
For example if you bind a dropdown to node myNode with value attribute myAttribute the lead selection of node myNode is set in the position of element choose from user.
So to take this chooised element use this code:
wdContext.currentMyNodeElement.getmyAttribute()
bye
Andrea -
How can I see the selected tags in the tag bar clearly
How can I see the selected tags in the tag bar clearly (they used to be in black, now they do not change color; a highlight or Bold would help)
The History menu lets you revisit the page where you can drag any page element from it.
How would you sort through thousands (tens of thousands) of files found in a cache? -
How can I make the media size print option "custum" become available if it is not currently?
How can I make the media size print option "custum" become available if it is not currently?
See this article also: http://readwrite.com/2013/10/15/ios-7-fixes-iphone-4-4s#awesm=~oktbEwjOyyvr80
-
How can we get the selected line number from JTextArea ?
how can we get the selected line number from JTextArea ? and want to insert line/string given line number into JTextArea??? is it possible ?
Praitheesh wrote:
how can we get the selected line number from JTextArea ?
textArea.getLineOfOffset(textArea.getCaretPosition());
and want to insert line/string given line number into JTextArea??? is it possible ?
int lineToInsertAt = 5; // Whatever you want.
int offs = textArea.getLineStartOffset(lineToInsertAt);
textArea.insert("Text to insert", offs); -
How can i make the text go vertically in numbers
How can I make the text vertical in numbers? I have merged the cells and cannot find an option for making it go vertical as opposed to horizontal.
I already gave two tools to fit this kind of needs.
tip #1 :
--{code}
--[SCRIPT write_vertically]
Enregistrer le script en tant que Script : write_vertically.scpt
déplacer le fichier ainsi créé dans le dossier
<VolumeDeDémarrage>:Utilisateurs:<votreCompte>:Bibliothèque:Scripts:Applications :Numbers:
Il vous faudra peut-être créer le dossier Numbers et peut-être même le dossier Applications.
Saisir dans une cellule le mot à écrire verticalement puis le sélectionner.
ATTENTION, il ne faut pas sélectionner la cellule mais le mot qui doit apparaitre surligné.
Aller au menu Scripts , choisir Numbers puis choisir “write_vertically”
Le script colle dans la cellule le mot apès avoir inséré un return entre tous les caractères.
Pour mon usage personnel j'associe un raccourci à ce script grace à FastScripts.
--=====
L’aide du Finder explique:
L’Utilitaire AppleScript permet d’activer le Menu des scripts :
Ouvrez l’Utilitaire AppleScript situé dans le dossier Applications/AppleScript.
Cochez la case “Afficher le menu des scripts dans la barre de menus”.
Sous 10.6.x,
aller dans le panneau “Général” du dialogue Préférences de l’Éditeur Applescript
puis cocher la case “Afficher le menu des scripts dans la barre des menus”.
--=====
Save the script as a Script: write_vertically.scpt
Move the newly created file into the folder:
<startup Volume>:Users:<yourAccount>:Library:Scripts:Applications:Numbers:
Maybe you would have to create the folder Numbers and even the folder Applications by yourself.
In a cell, type a word to write vertically then select it.
CAUTION, don’t select the cell but the word which must be highlighted.
Go to the Scripts Menu, choose Numbers, then choose “write_vertically”
The script insert in the cell the word after inserting a return between every characters.
For my own use, I link a shortcut to the script thank to FastScripts.
--=====
The Finder’s Help explains:
To make the Script menu appear:
Open the AppleScript utility located in Applications/AppleScript.
Select the “Show Script Menu in menu bar” checkbox.
Under 10.6.x,
go to the General panel of AppleScript Editor’s Preferences dialog box
and check the “Show Script menu in menu bar” option.
--=====
Yvan KOENIG (VALLAURIS, France)
2011/12/17
2012/01/01 no longer use a local variable, use result
--=====
on run
Clear the clipboard *)
set the clipboard to ""
Copy the selection in the clipboard *)
my raccourci("Numbers", "c", "c")
Loop waiting that the clipboard is really filled *)
repeat
try
if (the clipboard as text) is not "" then exit repeat
on error
end try
end repeat
Extract the clipboard's content *)
the clipboard as text
Insert return between every characters *)
my recolle(every character of result, return)
Fill the clipboard with the edited string *)
set the clipboard to result
Paste in the cell *)
my raccourci("Numbers", "v", "cas")
end run
--=====
on recolle(l, d)
local oTIDs, t
set oTIDs to AppleScript's text item delimiters
set AppleScript's text item delimiters to d
set t to l as text
set AppleScript's text item delimiters to oTIDs
return t
end recolle
--=====
on activateGUIscripting()
(* to be sure than GUI scripting will be active *)
tell application "System Events"
if not (UI elements enabled) then set (UI elements enabled) to true
end tell
end activateGUIscripting
--=====
==== Uses GUIscripting ====
This handler may be used to 'type' text, invisible characters if the third parameter is an empty string.
It may be used to 'type' keyboard raccourcis if the third parameter describe the required modifier keys.
I changed its name « shortcut » to « raccourci » to get rid of a name conflict in Smile.
on raccourci(a, t, d)
local k
tell application a to activate
tell application "System Events" to tell application process a
set frontmost to true
try
t * 1
if d is "" then
key code t
else if d is "c" then
key code t using {command down}
else if d is "a" then
key code t using {option down}
else if d is "k" then
key code t using {control down}
else if d is "s" then
key code t using {shift down}
else if d is in {"ac", "ca"} then
key code t using {command down, option down}
else if d is in {"as", "sa"} then
key code t using {shift down, option down}
else if d is in {"sc", "cs"} then
key code t using {command down, shift down}
else if d is in {"kc", "ck"} then
key code t using {command down, control down}
else if d is in {"ks", "sk"} then
key code t using {shift down, control down}
else if (d contains "c") and (d contains "s") and d contains "k" then
key code t using {command down, shift down, control down}
else if (d contains "c") and (d contains "s") and d contains "a" then
key code t using {command down, shift down, option down}
end if
on error
repeat with k in t
if d is "" then
keystroke (k as text)
else if d is "c" then
keystroke (k as text) using {command down}
else if d is "a" then
keystroke k using {option down}
else if d is "k" then
keystroke (k as text) using {control down}
else if d is "s" then
keystroke k using {shift down}
else if d is in {"ac", "ca"} then
keystroke (k as text) using {command down, option down}
else if d is in {"as", "sa"} then
keystroke (k as text) using {shift down, option down}
else if d is in {"sc", "cs"} then
keystroke (k as text) using {command down, shift down}
else if d is in {"kc", "ck"} then
keystroke (k as text) using {command down, control down}
else if d is in {"ks", "sk"} then
keystroke (k as text) using {shift down, control down}
else if (d contains "c") and (d contains "s") and d contains "k" then
keystroke (k as text) using {command down, shift down, control down}
else if (d contains "c") and (d contains "s") and d contains "a" then
keystroke (k as text) using {command down, shift down, option down}
end if
end repeat
end try
end tell
end raccourci
--=====
--[/SCRIPT]
--{code}
tip #2 :
--{code}
--[SCRIPT rotate_cell_contents]
Enregistrer le script en tant que Script : rotate_cell_contents.scpt
déplacer le fichier ainsi créé dans le dossier
<VolumeDeDémarrage>:Users:<votreCompte>:Library:Scripts:Applications:Numbers:
Il vous faudra peut-être créer le dossier Numbers et peut-être même le dossier Applications.
Sélectionner une cellule dont le texte doit être tourné de 90 degrés.
Aller au menu Scripts , choisir Numbers puis choisir “rotate_cell_contents”
--=====
L’aide du Finder explique:
L’Utilitaire AppleScript permet d’activer le Menu des scripts :
Ouvrez l’Utilitaire AppleScript situé dans le dossier Applications/AppleScript.
Cochez la case “Afficher le menu des scripts dans la barre de menus”.
Sous 10.6.x,
aller dans le panneau “Général” du dialogue Préférences de l’Éditeur Applescript
puis cocher la case “Afficher le menu des scripts dans la barre des menus”.
--=====
Save the script as a Script: rotate_cell_contents.scpt
Move the newly created file into the folder:
<startup Volume>:Users:<yourAccount>:Library:Scripts:Applications:Numbers:
Maybe you would have to create the folder Numbers and even the folder Applications by yourself.
Select a cell whose contents must be rotated for 90 degrees.
Go to the Scripts Menu, choose Numbers, then choose “rotate_cell_contents”
--=====
The Finder’s Help explains:
To make the Script menu appear:
Open the AppleScript utility located in Applications/AppleScript.
Select the “Show Script Menu in menu bar” checkbox.
Under 10.6.x,
go to the General panel of AppleScript Editor’s Preferences dialog box
and check the “Show Script menu in menu bar” option.
--=====
Yvan KOENIG (VALLAURIS, France)
2011/06/23
2011/06/26 -- No longer use an auxiliary text box. Now keep the text attributes.
2012/01/31 -- edited for Lion
--=====
on run
local dName, sName, tName, rowNum1, colNum1, rowNum2, colNum2
local le_texte, la_largeur, la_hauteur, myNewDoc
my activateGUIscripting()
Extract properties of the source/target cell *)
set {dName, sName, tName, rowNum1, colNum1, rowNum2, colNum2} to my get_SelParams()
tell application "Numbers" to tell document dName to tell sheet sName to tell table tName
set selection range to range (name of column colNum1 & name of row rowNum1)
end tell
Cut*)
my raccourci("Numbers", "x", "c")
Trigger Preview *)
tell application "System Events"
if "Preview" is not in (name of every application process) then launch application "Preview"
end tell
delay 0.2 -- required
New document from the clipboard *)
my raccourci("Preview", "n", "c")
Rotate to left *)
my raccourci("Preview", "l", "c")
Copy *)
my raccourci("Preview", "c", "c")
Quit *)
my raccourci("Preview", "q", "c")
(system attribute "sys2") < 7
if result then
Click the [Don't Save] button in the warning sheet *)
tell application "Preview" to activate
tell application "System Events" to tell application process "Preview" to tell window 1
name of buttons
repeat 50 times
delay 0.1
if exists sheet 1 then exit repeat
end repeat
tell sheet 1 to click button 2
end tell
end if
Back to Numbers *)
tell application "Numbers" to tell document dName to tell sheet sName to tell table tName
-- just reset the focus on the table
end tell
Paste in the cell *)
my raccourci("Numbers", "v", "c")
end run
--=====
set { dName, sName, tName, rowNum1, colNum1, rowNum2, colNum2} to my get_SelParams()
tell application "Numbers" to tell document dName to tell sheet sName to tell table tName
on get_SelParams()
local d_name, s_name, t_name, row_num1, col_num1, row_num2, col_num2
tell application "Numbers" to tell document 1
set d_name to its name
set s_name to ""
repeat with i from 1 to the count of sheets
tell sheet i to set maybe to the count of (tables whose selection range is not missing value)
if maybe is not 0 then
set s_name to name of sheet i
exit repeat
end if -- maybe is not 0
end repeat
if s_name is "" then
if my parleAnglais() then
error "No sheet has a selected table embedding at least one selected cell !"
else
error "Aucune feuille ne contient une table ayant au moins une cellule sélectionnée !"
end if -
How can I make the combo box turn to the value of black.
When the show button is pressed (and not before), a filled black square should be
displayed in the display area. The combo box (or drop down list) that enables the user to choose the colour of
the displayed shape and the altering should take effect immediately.When the show button is pressed,
the image should immediately revert to the black square, the combo box should show the value that
correspond to the black.
Now ,the problem is: after I pressed show button, the image is reverted to the black square,but I don't know
how can I make the combo box turn to the value of black.
Any help or hint?Thanks a lot!
coding 1.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class test extends JFrame {
private JPanel buttonPanel;
private DrawPanel myPanel;
private JButton showButton;
private JComboBox colorComboBox;
private boolean isShow;
private int shape;
private boolean isFill=true;
private String colorNames[] = {"black", "blue", "cyan", "darkGray", "gray",
"green", "lightgray", "magenta", "orange",
"pink", "red", "white", "yellow"}; // color names list in ComboBox
private Color colors[] = {Color.black, Color.blue, Color.cyan, Color.darkGray,
Color.gray, Color.green, Color.lightGray, Color.magenta,
Color.orange, Color.pink, Color.red, Color.white, Color.yellow};
public test() {
super("Draw Shapes");
// creat custom drawing panel
myPanel = new DrawPanel(); // instantiate a DrawPanel object
myPanel.setBackground(Color.white);
// set up showButton
// register an event handler for showButton's ActionEvent
showButton = new JButton ("show");
showButton.addActionListener(
// anonymous inner class to handle showButton events
new ActionListener() {
// draw a black filled square shape after clicking showButton
public void actionPerformed (ActionEvent event) {
// call DrawPanel method setShowStatus and pass an parameter
// to decide if show the shape
myPanel.setShowStatus(true);
isShow = myPanel.getShowStatus();
shape = DrawPanel.SQUARE;
// call DrawPanel method setShape to indicate shape to draw
myPanel.setShape(shape);
// call DrawPanel method setFill to indicate to draw a filled shape
myPanel.setFill(true);
// call DrawPanel method draw
myPanel.draw();
myPanel.setFill(true);
myPanel.setForeground(Color.black);
}// end anonymous inner class
);// end call to addActionListener
// set up colorComboBox
// register event handlers for colorComboBox's ItemEvent
colorComboBox = new JComboBox(colorNames);
colorComboBox.setMaximumRowCount(5);
colorComboBox.addItemListener(
// anonymous inner class to handle colorComboBox events
new ItemListener() {
// select shape's color
public void itemStateChanged(ItemEvent event) {
if(event.getStateChange() == ItemEvent.SELECTED)
// call DrawPanel method setForeground
// and pass an element value of colors array
myPanel.setForeground(colors[colorComboBox.getSelectedIndex()]);
myPanel.draw();
}// end anonymous inner class
); // end call to addItemListener
// set up panel containing buttons
buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(4, 1, 0, 50));
buttonPanel.add(showButton);
buttonPanel.add(colorComboBox);
JPanel radioButtonPanel = new JPanel();
radioButtonPanel.setLayout(new GridLayout(2, 1, 0, 20));
Container container = getContentPane();
container.setLayout(new BorderLayout(10,10));
container.add(myPanel, BorderLayout.CENTER);
container.add(buttonPanel, BorderLayout.EAST);
setSize(500, 400);
setVisible(true);
public static void main(String args[]) {
test application = new test();
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
coding 2
import java.awt.*;
import javax.swing.*;
public class DrawPanel extends JPanel {
public final static int CIRCLE = 1, SQUARE = 2;
private int shape;
private boolean fill;
private boolean showStatus;
private int shapeSize = 100;
private Color foreground;
// draw a specified shape
public void paintComponent (Graphics g){
super.paintComponent(g);
// find center
int x=(getSize().width-shapeSize)/2;
int y=(getSize().height-shapeSize)/2;
if (shape == CIRCLE) {
if (fill == true){
g.setColor(foreground);
g.fillOval(x, y, shapeSize, shapeSize);
else{
g.setColor(foreground);
g.drawOval(x, y, shapeSize, shapeSize);
else if (shape == SQUARE){
if (fill == true){
g.setColor(foreground);
g.fillRect(x, y, shapeSize, shapeSize);
else{
g.setColor(foreground);
g.drawRect(x, y, shapeSize, shapeSize);
// set showStatus value
public void setShowStatus (boolean s) {
showStatus = s;
// return showstatus value
public boolean getShowStatus () {
return showStatus;
// set fill value
public void setFill(boolean isFill) {
fill = isFill;
// set shape value
public void setShape(int shapeToDraw) {
shape = shapeToDraw;
// set shapeSize value
public void setShapeSize(int newShapeSize) {
shapeSize = newShapeSize;
// set foreground value
public void setForeground(Color newColor) {
foreground = newColor;
// repaint DrawPanel
public void draw (){
if(showStatus == true)
repaint();Hello,
does setSelectedIndex(int anIndex)
do what you need?
See Java Doc for JComboBox. -
I have moved my library to an external hard drive and changed the location of the iTunes media folder in Preferences, but every time I close and re-open iTunes, I have to do it all over again. How can I make the iTunes media folder change permanent? I have an older machine with Windows XP.
I don't believe mounting the hard drive should be necessary, unless you have several external drives and want your computer to recognise them as folders, rather than drives. I've never had to mount a hard drive, ever. If you don't know how to do it, then it shouldn't be necessary now.
Try this:
Prepare iTunes so that it can see the external drive.
Make a note of which drive-letter the external drive has been allocated. (Look in Windows Exploer)
Look at the file location for a song. Make sure it plays (and therefore that iTunes has found it). Highlight it and select File/Get Info/Summary>Where: and make a note of the drive letter for that song.
Close and shut down the computer.
The next time you turn the computer on again, connect the external drive
Before you start iTunes - check the external drive in Windows Explorer. Is it ready, does it have the same drive-letter that it had last time? Can you go into the drive and see the files on it?
Once you can, start iTunes. (If the drive lettter has changed, you need to work out why before going any further.)
If iTunes fails to find your external drive, you need to check where iTunes is looking for your Library.
Select the same song you checked before (presumably iTunes can no longer find it). Follow the procedure for locating it. You should be able to see where iTunes thinks the file is. It's the drive that counts. Which drive letter is iTunes looking at? Is it the same one that it was previously (which should also be the same one that the drive has now).
What happens, which step do you have problems with?
Message was edited by: the fiend -
How can I make the execution of my script faster
Hi everyone
How can I make the execution of my script faster, because it takes a lot of time to execute? The following is my script:
DECLARE
CURSOR C1 IS
SELECT A.ITEM_CODE,A.STORE_CODE,ST_UNIT,SA_UNIT,CART_QTY,QUANTITY_ON_HAND
FROM PROJ.IM_LOCATION A
WHERE A.ITEM_CODE BETWEEN :ITEM_FRM AND :ITEM_TO
AND A.STORE_CODE = :FRM_STORE
ORDER BY
A.STORE_CODE ;
CURSOR C2 IS
SELECT A.ITEM_CODE,A.STORE_CODE,ST_UNIT,SA_UNIT,CART_QTY,QUANTITY_ON_HAND
FROM PROJ.IM_LOCATION A
WHERE A.ITEM_CODE BETWEEN :ITEM_FRM AND :ITEM_TO
AND A.STORE_CODE = :FRM_STORE
ORDER BY
A.STORE_CODE ;
big_syb_qty_issue number(12,3);
small_syb_qty_issue number(12,3);
big_issue number(12,3);
small_issue number(12,3);
item_syb_code varchar2(30);
big_syb_qty_rec number(12,3);
small_syb_qty_rec number(12,3);
BI_SUPP_REC number(12,3);
SM_SUPP_REC number(12,3);
big_syb_qty_ADJ number(12,3);
small_syb_qty_ADJ number(12,3);
big_ADJ number(12,3);
small_ADJ number(12,3);
big_syb_qty_rec_iner number(12,3);
small_syb_qty_rec_iner number(12,3);
BI_INTER number(12,3);
SM_INTER number(12,3);
cl_big_qty number(12,3);
cl_small_qty number(12,3);
cl_big_qty1 number(12,3);
cl_small_qty1 number(12,3);
BIG_QTY_OPEN number(12,3);
SMALL_QTY_OPEN number(12,3);
BEGIN
IF ((:FRM_STORE IS NULL) OR (:ITEM_FRM IS NULL) OR (:ITEM_TO IS NULL) OR (:DATE_FRM IS NULL)) THEN
SHOW_MESSAGE('You Should Enter the Parameters Values Correctly Please try again !!!! ');
RAISE FORM_TRIGGER_FAILURE;
GO_FIELD('DATE_FRM');
END IF;
DELETE FROM STOCK_AT_DATE_REP2;
COMMIT;
cl_big_qty := 0;
cl_small_qty := 0;
-- MESSAGE('Please Wait The System Calculating The Transactions !!!');
SET_APPLICATION_PROPERTY(CURSOR_STYLE,'BUSY');
FOR R IN C1
LOOP
cl_big_qty := R.CART_QTY ;
cl_small_qty := R.QUANTITY_ON_HAND;
-- Transerfer Data 1
BEGIN
SELECT B.ITEM_CODE,SUM(NVL(CART_QTY,0)) ,SUM(NVL(ITEM_QUANTITY,0))
INTO item_syb_code,big_syb_qty_issue,small_syb_qty_issue
FROM IM_TRANS_ISSUE_HEADER A,IM_TRANS_ISSUE_DETAILS B
WHERE A.DOC_CODE = B.DOC_CODE
AND B.DEL_STORE = R.STORE_CODE
AND ITEM_CODE = R.ITEM_CODE
AND DOC_DATE > :DATE_TO
GROUP BY
B.ITEM_CODE;
-- SHOW_MESSAGE('ISSUED BIG'||' '||big_syb_qty_issue);
exception
when no_data_found then big_syb_qty_issue := 0;
small_syb_qty_issue := 0;
when others then MESSAGE(10,sqlerrm);
END ;
-- Goods Received Data From Supplier 1
BEGIN
SELECT B.ITEM_CODE,SUM(B.CART_QTY),SUM(ITEM_QUANTITY)
INTO item_syb_code,big_syb_qty_rec,small_syb_qty_rec
FROM IM_GOODS_RECIEVE_HEADER A,IM_GOODS_RECIEVE_DETAILS B
WHERE A.DOC_CODE = B.DOC_CODE
AND STORE_CODE = R.STORE_CODE
AND ITEM_CODE = R.ITEM_CODE
AND DOC_DATE > :DATE_TO
GROUP BY
B.ITEM_CODE;
-- SHOW_MESSAGE('RECEIVED FROM SUPPLIER BIG'||' '||big_syb_qty_rec);
exception
when no_data_found then big_syb_qty_rec := 0;
small_syb_qty_rec := 0;
when others then message(10,sqlerrm);
END ;
-- Adjustement Data 1
BEGIN
SELECT B.ITEM_CODE ,SUM(NVL(CART_QTY,0)) ADJUST_QTY,SUM(NVL(ITEM_QUANTITY,0))
INTO item_syb_code,big_syb_qty_ADJ,small_syb_qty_ADJ
FROM IM_ADJUST_HEADER A,IM_ADJUST_DETAILS B
WHERE A.DOC_CODE = B.DOC_CODE
AND B.STORE_CODE = R.STORE_CODE
AND ITEM_CODE = R.ITEM_CODE
AND A.DOC_DATE > :DATE_TO
GROUP BY
B.ITEM_CODE;
-- SHOW_MESSAGE('Adjust BIG'||' '||big_syb_qty_ADJ);
exception
when no_data_found then big_syb_qty_ADJ := 0;
small_syb_qty_ADJ := 0;
when others then message(10,sqlerrm);
END ;
-- Goods Received Data From Stores 1
BEGIN
SELECT B.ITEM_CODE,SUM(B.CART_QTY),SUM(ITEM_QUANTITY)
INTO item_syb_code,big_syb_qty_rec_iner,small_syb_qty_rec_iner
FROM IM_TRANS_REC_HEADER A,IM_TRANS_REC_DETAILS B
WHERE A.DOC_CODE = B.DOC_CODE
AND REC_STORE = R.STORE_CODE
AND ITEM_CODE = R.ITEM_CODE
AND DOC_DATE > :DATE_TO
GROUP BY
B.ITEM_CODE;
-- show_message('here');
-- SHOW_MESSAGE('Received From Stores BIG'||' '||big_syb_qty_rec_iner);
exception
when no_data_found then
big_syb_qty_rec_iner := 0;
small_syb_qty_rec_iner := 0;
when others then message(10,sqlerrm);
END ;
cl_big_qty := (NVL(cl_big_qty,0) + NVL(big_syb_qty_issue,0));
cl_big_qty := (NVL(cl_big_qty,0) - NVL(big_syb_qty_rec,0));
cl_big_qty := (NVL(cl_big_qty,0) - NVL(big_syb_qty_rec_iner,0));
big_syb_qty_ADJ := -1 * NVL(big_syb_qty_ADJ,0);
cl_big_qty := (NVL(cl_big_qty,0) + NVL(big_syb_qty_ADJ,0));
-- srw.message(2000,'cl_small_qty'||cl_small_qty);
cl_small_qty := (NVL(cl_small_qty,0) + NVL(small_syb_qty_issue,0));
cl_small_qty := (NVL(cl_small_qty,0) - NVL(small_syb_qty_rec,0));
cl_small_qty := (NVL(cl_small_qty,0) - NVL(small_syb_qty_rec_iner,0));
small_syb_qty_ADJ := -1 * NVL(small_syb_qty_ADJ,0);
cl_small_qty := (NVL(cl_small_qty,0) + NVL(small_syb_qty_ADJ,0));
-- srw.message(2000,'cl_small_qty'||cl_small_qty); srw.message(2000,'cl_small_qty'||cl_small_qty);
INSERT INTO STOCK_AT_DATE_REP2
VALUES(R.STORE_CODE,R.ITEM_CODE,cl_big_qty,cl_small_qty,R.ST_UNIT,R.SA_UNIT,:DATE_FRM,
:DATE_TO,0,0,0,0,0,0,0,0,cl_big_qty,cl_small_qty);
cl_big_qty := 0;
cl_small_qty := 0;
END LOOP;
COMMIT;
FOR R IN C2
LOOP
-- Transerfer Data 2
BEGIN
SELECT B.ITEM_CODE,SUM(NVL(CART_QTY,0)) ,SUM(NVL(ITEM_QUANTITY,0))
INTO item_syb_code,big_issue,small_issue
FROM IM_TRANS_ISSUE_HEADER A,IM_TRANS_ISSUE_DETAILS B
WHERE A.DOC_CODE = B.DOC_CODE
AND B.DEL_STORE = R.STORE_CODE
AND ITEM_CODE = R.ITEM_CODE
AND DOC_DATE BETWEEN :DATE_FRM AND :DATE_TO
GROUP BY
B.ITEM_CODE;
-- SHOW_MESSAGE('ISSUED BIG'||' '||big_syb_qty_issue);
exception
when no_data_found then
big_issue := 0;
small_issue := 0;
when others then MESSAGE(10,sqlerrm);
END ;
-- Goods Received Data From Supplier 2
BEGIN
SELECT B.ITEM_CODE,SUM(NVL(B.CART_QTY,0)),SUM(NVL(ITEM_QUANTITY,0))
INTO item_syb_code,BI_SUPP_REC,SM_SUPP_REC
FROM IM_GOODS_RECIEVE_HEADER A,IM_GOODS_RECIEVE_DETAILS B
WHERE A.DOC_CODE = B.DOC_CODE
AND STORE_CODE = R.STORE_CODE
AND ITEM_CODE = R.ITEM_CODE
AND DOC_DATE BETWEEN :DATE_FRM AND :DATE_TO
GROUP BY
B.ITEM_CODE;
-- SHOW_MESSAGE('1- SM_SUPP_REC '||' '||SM_SUPP_REC );
-- SHOW_MESSAGE('RECEIVED FROM SUPPLIER BIG'||' '||big_syb_qty_rec);
exception
when no_data_found then
BI_SUPP_REC := 0;
SM_SUPP_REC := 0;
when others then message(10,sqlerrm);
END ;
-- Adjustement Data 2
BEGIN
SELECT B.ITEM_CODE ,SUM(NVL(CART_QTY,0)) ADJUST_QTY,SUM(NVL(ITEM_QUANTITY,0))
INTO item_syb_code,big_ADJ,small_ADJ
FROM IM_ADJUST_HEADER A,IM_ADJUST_DETAILS B
WHERE A.DOC_CODE = B.DOC_CODE
AND B.STORE_CODE = R.STORE_CODE
AND ITEM_CODE = R.ITEM_CODE
AND A.DOC_DATE BETWEEN :DATE_FRM AND :DATE_TO
GROUP BY
B.ITEM_CODE;
-- SHOW_MESSAGE('Adjust BIG'||' '||big_syb_qty_ADJ);
exception
when no_data_found then
big_ADJ := 0;
small_ADJ := 0;
when others then message(10,sqlerrm);
END ;
-- Goods Received Data From Stores 2
BEGIN
SELECT B.ITEM_CODE,SUM(NVL(B.CART_QTY,0)),SUM(NVL(ITEM_QUANTITY,0))
INTO item_syb_code,BI_INTER,SM_INTER
FROM IM_TRANS_REC_HEADER A,IM_TRANS_REC_DETAILS B
WHERE A.DOC_CODE = B.DOC_CODE
AND REC_STORE = R.STORE_CODE
AND ITEM_CODE = R.ITEM_CODE
AND DOC_DATE BETWEEN :DATE_FRM AND :DATE_TO
GROUP BY
B.ITEM_CODE;
-- show_message('here');
-- SHOW_MESSAGE('Received From Stores BIG'||' '||big_syb_qty_rec_iner);
exception
when no_data_found then
BI_INTER := 0;
SM_INTER := 0;
when others then message(10,sqlerrm);
END ;
BEGIN
BIG_QTY_OPEN := 0;
SMALL_QTY_OPEN := 0;
BEGIN
SELECT NVL(S_BIG_QTY_OPEN,0) ,NVL(S_SMALL_QTY_OPEN,0)
INTO
BIG_QTY_OPEN,SMALL_QTY_OPEN
FROM STOCK_AT_DATE_REP2
WHERE S_STORE_CODE = R.STORE_CODE
AND S_ITEM_CODE = R.ITEM_CODE;
END;
BIG_QTY_OPEN := ((BIG_QTY_OPEN) + NVL(big_issue,0));
BIG_QTY_OPEN := ((BIG_QTY_OPEN) - NVL(BI_SUPP_REC,0));
big_adj := -1 * NVL(big_adj,0);
BIG_QTY_OPEN := ((BIG_QTY_OPEN) + NVL(big_adj,0));
BIG_QTY_OPEN := ((BIG_QTY_OPEN) - NVL(BI_INTER,0));
SMALL_QTY_OPEN := ((SMALL_QTY_OPEN) + NVL(SMALL_issue,0));
SMALL_QTY_OPEN := ((SMALL_QTY_OPEN) - NVL(SM_SUPP_REC ,0));
SMALL_adj := -1 * NVL(SMALL_adj,0);
SMALL_QTY_OPEN := ((SMALL_QTY_OPEN) + NVL(SMALL_adj,0));
SMALL_QTY_OPEN := ((SMALL_QTY_OPEN) - NVL(SM_INTER,0));
END;
BEGIN
UPDATE STOCK_AT_DATE_REP2
SET BIG_SUP_REC = BI_SUPP_REC,
SMALL_SUP_REC = SM_SUPP_REC,
BIG_ISSUE_TRAN = big_issue,
SMALL_ISSUE_TRAN = SMALL_issue,
BIG_ADJUST = big_adj,
SMALL_ADJUST = SMALL_adj,
BIG_INTER_REC = BI_INTER,
SMALL_INTER_REC = SM_INTER,
S_BIG_QTY_OPEN = BIG_QTY_OPEN,
S_SMALL_QTY_OPEN = SMALL_QTY_OPEN
WHERE S_STORE_CODE = R.STORE_CODE
AND S_ITEM_CODE = R.ITEM_CODE;
exception
when no_data_found then
NULL;
when others then
message(10,sqlerrm);
END;
END LOOP;
COMMIT;
SET_APPLICATION_PROPERTY(CURSOR_STYLE,'default');
SYNCHRONIZE;
-- SHOW_MESSAGE('The Data Have Been Calculated !!!');
END;
declare
pl_id ParamList;
APPLICATION_ID VARCHAR2(20):='PRD';
COMMAND_LINE VARCHAR2(100) :='STOCK_LEDGER';
BEGIN
pl_id := Get_Parameter_List('tmpdata');
IF NOT Id_Null(pl_id) THEN
Destroy_Parameter_List( pl_id );
END IF;
pl_id := Create_Parameter_List('tmpdata');
Add_Parameter(pl_id,'DATE_FRM',TEXT_PARAMETER,:DATE_FRM);
Add_Parameter(pl_id,'DATE_TO',TEXT_PARAMETER,:DATE_TO);
Add_Parameter(pl_id,'ITEM_FRM',TEXT_PARAMETER,:ITEM_FRM);
Add_Parameter(pl_id,'ITEM_TO',TEXT_PARAMETER,:ITEM_TO);
Add_Parameter(pl_id,'FRM_STORE',TEXT_PARAMETER,:FRM_STORE);
IF :REPORT_TYPE = 1 THEN
Run_Product(REPORTS,'C:\INV\RDF\STOCK_LEDGER.rdf',SYNCHRONOUS,RUNTIME,
FILESYSTEM, pl_id,NULL);
ELSIF :REPORT_TYPE = 2 THEN
Run_Product(REPORTS,'C:\INV\RDF\STOCK_LEDGER_2.rdf',SYNCHRONOUS,RUNTIME,
FILESYSTEM, pl_id,NULL);
END IF;
END;
Waiting for your valuable answer
Best Regards
Jamil AlshaibaniMake a matte in Photoshop.
From the Photoshop menu bar: File > New > Film & Video Presets. Choose one that suits your FCP project pixel dimensions. Make the background black. Place a white rectangle with rounded corners on top (the white will determine how much of your picture is visible). Flatten Image. Save as TIFF. Import into FCP.
Move your video clips up to V2. Place the imported TIFF on V1. Highlight all clips on V2.
Go to Modify > Composite Mode > Travel Matte Luma. Done.
If you want soft edges, no need for a matte. Double click your clip to place it in the Viewer. Open up the Motion tab > Crop > Edge Feather. Nice and quick. Copy and Paste attributes for the other clips. -
How can i make the optimiser to skip this full table scan ??
Hi,
I am trying to tune the below query, I have checked up all the possibilities to skip the full table scan on vhd_calldesh_archive, But am unable to find the predicate in the where clause, which is letting the optimiser to choose the full table scan on vhd_calldesk_archive table, which is very large one. how can i make the optimiser to skip this full table scan.
Please check the below sql script and explain plan ,
SELECT a.call_id, a.entry_date,
NVL (INITCAP (b.full_name), caller_name) AS caller_name,
c.description AS org_desc, a.env_id, i.env_desc, a.appl_id,
d.appl_desc, a.module_id, e.module_desc, a.call_type_id,
f.call_type_desc, a.priority, a.upduserid,
INITCAP (g.full_name) AS lastupdated_username, a.call_desc, h.mode_desc,
a.received_time,a.assignment_team, a.status,
ROUND (lcc.pkg_com.fn_datediff ('MI',
a.entry_date,
a.status_date
) AS elapsed_time,
ROUND (lcc.pkg_com.fn_datediff ('MI',
a.entry_date,
a.status_date
) AS resolved_min,
CASE
WHEN a.orgid in (1,100,200) THEN a.orgid
ELSE j.regionorgid
END AS region
,(SELECT coalesce(MAX(upddate),a.upddate) FROM lcc.vhd_callstatus stat WHERE stat.call_id = a.call_id
) as stat_upddate
,(SELECT team_desc from lcc.vhd_teams t where t.team_id = a.assignment_team) as team_desc
,a.eta_date
,coalesce(a.caller_contact, b.telephone) AS caller_contact
,coalesce(a.caller_email, b.email) as email
,a.affected_users
,a.outage_time
,a.QA_DONE
,a.LAST_ACTION_TEAM
,a.LAST_ACTION_USER
,INITCAP (k.full_name) AS last_action_username
,a.last_action_date
,l.team_desc as last_action_teamdesc
,a.refid
,INITCAP (lu.full_name) AS logged_name
,a.pmreview
,a.status as main_status
FROM lcc.vhd_calldesk_archive a
LEFT OUTER JOIN lcc.lcc_userinfo_details b ON b.user_name = a.caller_id
INNER JOIN lcc.com_organization c ON c.code = a.orgid
INNER JOIN lcc.vhd_applications d ON d.appl_id = a.appl_id
INNER JOIN lcc.vhd_modules e ON e.appl_id = a.appl_id AND e.module_id = a.module_id
INNER JOIN lcc.vhd_calltypes f ON f.call_type_id = a.call_type_id
INNER JOIN lcc.com_rptorganization j ON j.orgid = a.orgid AND j.tree = 'HLPDK'
LEFT OUTER JOIN lcc.lcc_userinfo_details g ON g.user_name = a.upduserid
LEFT OUTER JOIN lcc.vhd_callmode h ON h.mode_id = a.mode_id
LEFT OUTER JOIN lcc.vhd_environment i ON i.appl_id = a.appl_id AND i.env_id = a.env_id
LEFT OUTER JOIN lcc.lcc_userinfo_details k ON k.user_name = a.last_action_user
LEFT OUTER JOIN lcc.vhd_teams l ON l.team_id = a.last_action_user
LEFT OUTER JOIN (select CALL_ID,upduserid FROM lcc.VHD_CALLDESK_HISTORY P where upddate
in ( select min(upddate) from lcc.VHD_CALLDESK_HISTORY Q WHERE Q.CALL_ID = P.CALL_ID
group by call_id)) ku
ON ku.call_id = a.call_id
LEFT OUTER JOIN lcc.lcc_userinfo_details lu ON NVL(ku.upduserid,A.upduserid) = lu.user_name;
| Id | Operation | Name | Rows | Bytes | Cost |
| 0 | SELECT STATEMENT | | 2104 | 3667K| 37696 |
| 1 | UNION-ALL | | | | |
| 2 | NESTED LOOPS OUTER | | 2103 | 3665K| 37683 |
| 3 | VIEW | | 2103 | 3616K| 35580 |
| 4 | NESTED LOOPS OUTER | | 2103 | 823K| 35580 |
| 5 | NESTED LOOPS OUTER | | 2103 | 774K| 33477 |
| 6 | NESTED LOOPS OUTER | | 2103 | 685K| 31374 |
| 7 | NESTED LOOPS | | 2103 | 636K| 29271 |
| 8 | NESTED LOOPS | | 2103 | 603K| 27168 |
| 9 | NESTED LOOPS OUTER | | 2103 | 558K| 25065 |
| 10 | NESTED LOOPS OUTER | | 2103 | 515K| 22962 |
| 11 | NESTED LOOPS | | 2103 | 472K| 20859 |
| 12 | NESTED LOOPS | | 2103 | 429K| 18756 |
| 13 | NESTED LOOPS OUTER | | 4826 | 890K| 13930 |
| 14 | NESTED LOOPS OUTER | | 4826 | 848K| 9104 |
| 15 | NESTED LOOPS | | 4826 | 754K| 4278 |
|* 16 | TABLE ACCESS FULL | COM_RPTORGANIZATION | 75 | 1050 | 3 |
| 17 | TABLE ACCESS BY INDEX ROWID | VHD_CALLDESK | 64 | 9344 | 57 |
|* 18 | INDEX RANGE SCAN | VHD_CALLDSK_ORGID | 2476 | | 7 |
| 19 | VIEW PUSHED PREDICATE | | 1 | 20 | 1 |
|* 20 | FILTER | | | | |
| 21 | TABLE ACCESS BY INDEX ROWID | VHD_CALLDESK_HISTORY | 1 | 20 | 2 |
|* 22 | INDEX RANGE SCAN | VHD_CALLDSK_HIST_CALLID_IDX | 1 | | 1 |
|* 23 | FILTER | | | | |
| 24 | SORT GROUP BY NOSORT | | 1 | 12 | 2 |
| 25 | TABLE ACCESS BY INDEX ROWID | VHD_CALLDESK_HISTORY | 1 | 12 | 2 |
|* 26 | INDEX RANGE SCAN | VHD_CALLDSK_HIST_CALLID_IDX | 1 | | 1 |
| 27 | TABLE ACCESS BY INDEX ROWID | VHD_CALLMODE | 1 | 9 | 1 |
|* 28 | INDEX UNIQUE SCAN | VHD_CALLMOD_MODID_PK | 1 | | |
| 29 | TABLE ACCESS BY INDEX ROWID | VHD_APPLICATIONS | 1 | 20 | 1 |
|* 30 | INDEX UNIQUE SCAN | VHD_APPL_APPLID_PK | 1 | | |
| 31 | TABLE ACCESS BY INDEX ROWID | VHD_CALLTYPES | 1 | 21 | 1 |
|* 32 | INDEX UNIQUE SCAN | VHD_CALLTYP_ID_PK | 1 | | |
| 33 | TABLE ACCESS BY INDEX ROWID | VHD_TEAMS | 1 | 21 | 1 |
|* 34 | INDEX UNIQUE SCAN | VHD_TEAMID_PK | 1 | | |
| 35 | TABLE ACCESS BY INDEX ROWID | VHD_ENVIRONMENT | 1 | 21 | 1 |
|* 36 | INDEX UNIQUE SCAN | VHD_ENV_APLENVID_PK | 1 | | |
| 37 | TABLE ACCESS BY INDEX ROWID | VHD_MODULES | 1 | 22 | 1 |
|* 38 | INDEX UNIQUE SCAN | VHD_MOD_APLMOD_ID_PK | 1 | | |
| 39 | TABLE ACCESS BY INDEX ROWID | COM_ORGANIZATION | 1 | 16 | 1 |
|* 40 | INDEX UNIQUE SCAN | COM_ORG_PK | 1 | | |
| 41 | TABLE ACCESS BY INDEX ROWID | LCC_USERINFO_DETAILS | 1 | 24 |
|* 42 | INDEX UNIQUE SCAN | LCCUSERINFOIND | 1 | | |
| 43 | TABLE ACCESS BY INDEX ROWID | LCC_USERINFO_DETAILS | 1 | 43 |
|* 44 | INDEX UNIQUE SCAN | LCCUSERINFOIND | 1 | | |
| 45 | TABLE ACCESS BY INDEX ROWID | LCC_USERINFO_DETAILS | 1 | 24 | 1
|* 46 | INDEX UNIQUE SCAN | LCCUSERINFOIND | 1 | | |
| 47 | TABLE ACCESS BY INDEX ROWID | LCC_USERINFO_DETAILS | 1 | 24 | 1
|* 48 | INDEX UNIQUE SCAN | LCCUSERINFOIND | 1 | | |
| 49 | NESTED LOOPS OUTER | | 1 | 1785 | 13 |
| 50 | VIEW | | 1 | 1761 | 12 |
| 51 | NESTED LOOPS OUTER | | 1 | 1656 | 12 |
| 52 | NESTED LOOPS OUTER | | 1 | 1632 | 11 |
| 53 | NESTED LOOPS OUTER | | 1 | 1608 | 10 |
| 54 | NESTED LOOPS | | 1 | 1565 | 9 |
| 55 | NESTED LOOPS | | 1 | 1549 | 9 |
| 56 | NESTED LOOPS | | 1 | 1535 | 9 |
| 57 | NESTED LOOPS OUTER | | 1 | 1513 | 8 |
| 58 | NESTED LOOPS OUTER | | 1 | 1492 | 7 |
| 59 | NESTED LOOPS | | 1 | 1471 | 6 |
| 60 | NESTED LOOPS | | 1 | 1450 | 5 |
| 61 | NESTED LOOPS OUTER | | 1 | 1430 | 4 |
| 62 | NESTED LOOPS OUTER | | 1 | 1421 | 3 |
| 63 | TABLE ACCESS FULL | VHD_CALLDESK_ARCHIVE | 1 | 1401 | 2 |
| 64 | VIEW PUSHED PREDICATE | | 1 | 20 | 1 |
|* 65 | FILTER | | | | |
| 66 | TABLE ACCESS BY INDEX ROWID | VHD_CALLDESK_HISTORY | 1 | 20 | 2 |
|* 67 | INDEX RANGE SCAN | VHD_CALLDSK_HIST_CALLID_IDX | 1 | | 1 |
|* 68 | FILTER | | | | |
| 69 | SORT GROUP BY NOSORT | | 1 | 12 | 2 |
| 70 | TABLE ACCESS BY INDEX ROWID| VHD_CALLDESK_HISTORY | 1 | 12 | 2 |
|* 71 | INDEX RANGE SCAN | VHD_CALLDSK_HIST_CALLID_IDX | 1 | | 1 |
| 72 | TABLE ACCESS BY INDEX ROWID | VHD_CALLMODE | 1 | 9 | 1 |
|* 73 | INDEX UNIQUE SCAN | VHD_CALLMOD_MODID_PK | 1 | | |
| 74 | TABLE ACCESS BY INDEX ROWID | VHD_APPLICATIONS | 1 | 20 | 1 |
|* 75 | INDEX UNIQUE SCAN | VHD_APPL_APPLID_PK | 1 | | |
| 76 | TABLE ACCESS BY INDEX ROWID | VHD_CALLTYPES | 1 | 21 | 1 |
|* 77 | INDEX UNIQUE SCAN | VHD_CALLTYP_ID_PK | 1 | | |
| 78 | TABLE ACCESS BY INDEX ROWID | VHD_TEAMS | 1 | 21 | 1 |
|* 79 | INDEX UNIQUE SCAN | VHD_TEAMID_PK | 1 | | |
| 80 | TABLE ACCESS BY INDEX ROWID | VHD_ENVIRONMENT | 1 | 21 | 1 |
|* 81 | INDEX UNIQUE SCAN | VHD_ENV_APLENVID_PK | 1 | | |
| 82 | TABLE ACCESS BY INDEX ROWID | VHD_MODULES | 1 | 22 | 1 |
|* 83 | INDEX UNIQUE SCAN | VHD_MOD_APLMOD_ID_PK | 1 | | |
| 84 | TABLE ACCESS BY INDEX ROWID | COM_RPTORGANIZATION | 1 | 14 | |
|* 85 | INDEX UNIQUE SCAN | COM_RPTORG_PK | 1 | | |
| 86 | TABLE ACCESS BY INDEX ROWID | COM_ORGANIZATION | 1 | 16 | |
|* 87 | INDEX UNIQUE SCAN | COM_ORG_PK | 1 | | |
| 88 | TABLE ACCESS BY INDEX ROWID | LCC_USERINFO_DETAILS | 1 | 43 |
|* 89 | INDEX UNIQUE SCAN | LCCUSERINFOIND | 1 | | |
| 90 | TABLE ACCESS BY INDEX ROWID | LCC_USERINFO_DETAILS | 1 | 24 |
|* 91 | INDEX UNIQUE SCAN | LCCUSERINFOIND | 1 | | |
| 92 | TABLE ACCESS BY INDEX ROWID | LCC_USERINFO_DETAILS | 1 | 24 | 1
|* 93 | INDEX UNIQUE SCAN | LCCUSERINFOIND | 1 | | |
| 94 | TABLE ACCESS BY INDEX ROWID | LCC_USERINFO_DETAILS | 1 | 24 | 1
|* 95 | INDEX UNIQUE SCAN | LCCUSERINFOIND | 1 | | |
Predicate Information (identified by operation id):
16 - filter("J"."TREE"='HLPDK')
18 - access("J"."ORGID"="A"."ORGID")
20 - filter( EXISTS (SELECT /*+ */ 0 FROM "LCC"."VHD_CALLDESK_HISTORY" "Q" WHERE "Q"."CALL_ID"=:B1
"Q"."CALL_ID" HAVING MIN("Q"."UPDDATE")=:B2))
22 - access("SYS_ALIAS_2"."CALL_ID"="A"."CALL_ID")
23 - filter(MIN("Q"."UPDDATE")=:B1)
26 - access("Q"."CALL_ID"=:B1)
28 - access("H"."MODE_ID"(+)="A"."MODE_ID")
30 - access("D"."APPL_ID"="A"."APPL_ID")
32 - access("F"."CALL_TYPE_ID"="A"."CALL_TYPE_ID")
34 - access("L"."TEAM_ID"(+)="A"."LAST_ACTION_TEAM")
36 - access("I"."APPL_ID"(+)="A"."APPL_ID" AND "I"."ENV_ID"(+)="A"."ENV_ID")
38 - access("E"."APPL_ID"="A"."APPL_ID" AND "E"."MODULE_ID"="A"."MODULE_ID")
40 - access("C"."CODE"="A"."ORGID")
42 - access("K"."USER_NAME"(+)="A"."LAST_ACTION_USER")
44 - access("B"."USER_NAME"(+)="A"."CALLER_ID")
46 - access("G"."USER_NAME"(+)="A"."UPDUSERID")
48 - access("LU"."USER_NAME"(+)=NVL("SYS_ALIAS_4"."UPDUSERID_162","SYS_ALIAS_4"."UPDUSERID_25"))
65 - filter( EXISTS (SELECT /*+ */ 0 FROM "LCC"."VHD_CALLDESK_HISTORY" "Q" WHERE "Q"."CALL_ID"=:B1
"Q"."CALL_ID" HAVING MIN("Q"."UPDDATE")=:B2))
67 - access("SYS_ALIAS_2"."CALL_ID"="SYS_ALIAS_1"."CALL_ID")
68 - filter(MIN("Q"."UPDDATE")=:B1)
71 - access("Q"."CALL_ID"=:B1)
73 - access("H"."MODE_ID"(+)="SYS_ALIAS_1"."MODE_ID")
75 - access("D"."APPL_ID"="SYS_ALIAS_1"."APPL_ID")
77 - access("F"."CALL_TYPE_ID"="SYS_ALIAS_1"."CALL_TYPE_ID")
79 - access("L"."TEAM_ID"(+)=TO_NUMBER("SYS_ALIAS_1"."LAST_ACTION_USER"))
81 - access("I"."APPL_ID"(+)="SYS_ALIAS_1"."APPL_ID" AND "I"."ENV_ID"(+)="SYS_ALIAS_1"."ENV_ID")
83 - access("E"."APPL_ID"="SYS_ALIAS_1"."APPL_ID" AND "E"."MODULE_ID"="SYS_ALIAS_1"."MODULE_ID")
85 - access("SYS_ALIAS_1"."ORGID"="J"."ORGID" AND "J"."TREE"='HLPDK')
87 - access("C"."CODE"="SYS_ALIAS_1"."ORGID")
89 - access("B"."USER_NAME"(+)="SYS_ALIAS_1"."CALLER_ID")
91 - access("SYS_ALIAS_1"."UPDUSERID"="G"."USER_NAME"(+))
93 - access("K"."USER_NAME"(+)="SYS_ALIAS_1"."LAST_ACTION_USER")
95 - access("LU"."USER_NAME"(+)=NVL("SYS_ALIAS_3"."UPDUSERID_162","SYS_ALIAS_3"."UPDUSERID_25"))
Note: cpu costing is offI've tried to look thru your sql and changed it a bit. Of course not testet :-)
Your problem isn't the archive table! I tried to remove the 2 selects from the select-clause. Furthermore you have a lot of nested loops in your explain, which is a performance-killer. Try getting rid of them, perhaps use /*+ USE_HASH(?,?) */.
SELECT a.call_id, a.entry_date,
NVL (INITCAP (b.full_name), caller_name) AS caller_name, c.description AS org_desc, a.env_id, i.env_desc, a.appl_id,
d.appl_desc, a.module_id, e.module_desc, a.call_type_id, f.call_type_desc, a.priority, a.upduserid,
INITCAP (g.full_name) AS lastupdated_username, a.call_desc, h.mode_desc, a.received_time, a.assignment_team, a.status,
ROUND (lcc.pkg_com.fn_datediff ('MI', a.entry_date, a.status_date)) AS elapsed_time,
ROUND (lcc.pkg_com.fn_datediff ('MI', a.entry_date, a.status_date)) AS resolved_min,
CASE
WHEN a.orgid IN (1, 100, 200)
THEN a.orgid
ELSE j.regionorgid
END AS region,
COALESCE (stat.upddate, a.upddate) AS stat_upddate,
t.team_desc, a.eta_date,
COALESCE (a.caller_contact, b.telephone) AS caller_contact,
COALESCE (a.caller_email, b.email) AS email, a.affected_users,
a.outage_time, a.qa_done, a.last_action_team, a.last_action_user,
INITCAP (k.full_name) AS last_action_username, a.last_action_date,
l.team_desc AS last_action_teamdesc, a.refid,
INITCAP (lu.full_name) AS logged_name, a.pmreview,
a.status AS main_status
FROM lcc.vhd_calldesk_archive a, lcc.lcc_userinfo_details b, lcc.com_organization c,
lcc.vhd_applications d, lcc.vhd_modules e, lcc.vhd_calltypes f, lcc.com_rptorganization j,
lcc.lcc_userinfo_details g, lcc.vhd_callmode h, lcc.vhd_environment i, lcc.lcc_userinfo_details k,
lcc.vhd_teams l,
(SELECT call_id, upduserid
FROM lcc.vhd_calldesk_history p
WHERE upddate IN (SELECT MIN (upddate)
FROM lcc.vhd_calldesk_history q
WHERE q.call_id = p.call_id
GROUP BY call_id)) ku,
lcc.lcc_userinfo_details lu,
(SELECT call_id, MAX (upddate)
FROM lcc.vhd_callstatus
GROUP BY call_id) stat,
lcc.vhd_teams t
WHERE a.caller_id = b.user_name(+)
AND a.orgid = c.code
AND a.appl_id = d.appl_id
AND a.appl_id = e.appl_id
AND a.module_id = e.module_id
AND a.call_type_id = f.call_type_id
AND a.orgid = j.orgid
AND j.tree = 'HLPDK'
AND a.upduserid = g.user_name(+)
AND a.mode_id = h.mode_id(+)
AND a.appl_id = i.appl_id(+)
AND a.env_id = i.env_id(+)
AND a.last_action_user = k.user_name(+)
AND a.last_action_user = l.team_id(+)
AND a.call_id = ku.call_id(+)
AND NVL (ku.upduserid, a.upduserid) = lu.user_name(+)
AND a.call_id = stat.call_id
AND a.assignment_team = t.team_id; -
How can I make the status bar always visible in safari?
How can I make the status bar always visible in safari? Even when I go to "View" and then select "show status bar," the status bar still disappears unless my cursor is hovering over it. I want to be able to see the time, battery life etc. while surfing the web in safari!
When Safari is in FullScreen mode, menu bar will be hidden.
Safari window to fit the screen?
Move the mouse pointer to the bottom right corner of the Safari window.
Double arrows will appear. Drag it to resize the window to fit the screen. -
How can I make the edges of the JSC component curved?
It is a very common practice to make the edges curved in web development. Curved edge looks attractive and professional. (for example see blog.com)
How can I make the edges of the JSC component curved? For example, consider Textfield component, how to make the the sharp edges smooth and curved?
Thank you very much.Follow the steps below implement rounded edges for tabs in a tabset component:
1)Create 2 images: level1_selected.jp and level1_deselct.jpg to be used as the background for these tabs. Thse images can be easily craeted using windows paint software. Just ceate a rectangular image of size 200X30 and draw a rounded rectangle on it.
2) Redefine the following styles in your application stylesheet(originally defined in css_master.css)
.Tab1Div td.Tab1TblSelTd {
background-color:#EDF5F8;width: 200px;height:40px;background-image:url(images/level1_selected.jpg)
.Tab1Div td.Tab1TblSelTd {
background-repeat:repeat-x;background-position:left bottom;border-bottom:none
.Tab1Div td {
background-color:#EFEBEF;width: 200px;height:40px;background-image:url(images/level1_deselect.jpg);border:none
.Tab1Div td {
background-repeat:repeat-x;background-position:bottom left
a.Tab1Lnk:link, a.Tab1Lnk:visited {
display:block;padding:8px 15px 0px;font-weight:bold;text-align:center
Results: By doing this you'll have the selected and unselected tabs show up with rounded egdes and also the selected tab will look bigger than the unselected tas making it more prominent.
Maybe you are looking for
-
I have a 2006 ipod not being recognized by the latest version of itunes. Any solutions?
I have a 2006 ipod not being recognized by the latest version of itunes. Any solutions? I can see and listen to all of my music from the ipod on my stereo or thru headphones but for some reason, itunes doesn't see this device.
-
Connection Sharing between my mini and xbox
Does anyone know how to enable shair the connection on my mini? I've tryed several ways and I haven't been able to do this. Thanks. Mac Mini Mac OS X (10.4.6)
-
Br*tools Studio installation FAILED
HI ALL, i downloaded br tools studio 7.10(2), from sdn and trying to install on windows 2003 on sap ecc6.0 with basis patch level 9.0. but it keep failing to install without any error logs. is there anything else i need. please help me out on this in
-
Library wont show my music?
when i go under library and under music it just tells me info on how to download music from itunes and how to import cds and a link to watch some tutorials... but i cant see my music list, only when go under devices and music can i see my list! anyon
-
New Macbook Pro - no quantise in my GB3!
Hi - I just upgraded to MBP, got an audio interface that works, and now to get busy with GarageBand... first thing is to put down a rhythm track. The only thing is, I'm prone to making the odd timing error and when I went for the 'quantise'/'align to