Finding a deleted tree node yields something other than 0...
I FIND_TREE_NODE a deleted node, it keeps giving me
1232280 (I didn't make it up) instead of 0 as the node
identifier... Can anyone shed some light on this?
I FIND_TREE_NODE a deleted node, it keeps giving me
1232280 (I didn't make it up) instead of 0 as the node
identifier... Can anyone shed some light on this?
Similar Messages
-
Can I change the view of videos from thumbnails to details or something other than thumbnails?
I loaded a couple of tv series and movies into my ipad air 2 and when I click on the videos app they all appear as thumbnails. I was wondering if someone could help me change the view to maybe details or something other than thumbnails just so I can view what tv series I have. I couldn't find any option any where on the screen or in settings on changing the view. Please help
Ok nevermind I managed to sort it out.. had to change the type of video and sort the shows with their seasons. pretty long process.
-
Can a muse subscriber reconfigure the forms widgets to something other than BC?
Can a muse subscriber reconfigure the forms widgets to something other than BC?
What I did for my forms was create a copy of my Muse site file where I deleted everything except for the page with the forms (there were 2 on one page, and there are none anywhere else on the site). I kept the master, made a copy of it, and took everything out of the master. I then went to the page (titled "reach me", containing two forms, one for questions, and one for a mailing list) and selected everything and grouped it. The grouped item allowed for Muse to give me a width/height of all of the elements together. i took those dimensions and set them as the page defaults on the master i had just wiped out. i set all margins, footers, padding, etc to 0 and made it 1 column. i published the site to catalyst, and then copied the url to my clipboard. opening my site up again (the muse file i made the copy from) i went to PLAN and made a copy of the Reach Me page (as a backup, should something go awry, i called it "Reach Me-old") i opened the original "reach me" (being that all my other pages linked to it and not the copy i had just made) i wiped out all of the forms and content and inserted an html code snippet. i typed:
<style type="text/css">
#frame {overflow-x:none;overflow-y:none;border:0px;};
</style>
<iframe id="frame" src="URL" width="WIDTH" height="HEIGHT" scrolling="no" seamless sandbox="" />
* replace URL with the url you copied earlier
*replace width and height with the ones you typed in the b-master (or it might be called "A-Master copy" in your business catalyst site
this worked out just fine for me hope it helps you guys
check it out working:
ilenepricedesign.com (reach me page)
ilenepricedesign-contact.businesscatalyst.com (the page i created an iframe of)
===============
update: there were some issues with it (it worked for the most part, just some visual problems)
i created a copy muse file, deleted all except the page and the master i needed, and uploaded as-is to catalyst. i then fixed all hyperlinks on the master for the copied muse file to link back to original site and then on site linked the menu item for the page to go to the catalyst page. this works perfectly, i dont mind the url changing when everything looks the exact same. to the average user, i think you should be fine. -
Install OCS R2 on something other than Redhat AS 2.1?
I have a test environment I want to set up for OCS Release 2 9.0.4.1, but I'd like to do it on something other than Redhat Advanced Server 2.1. I saw a Note or something on Metalink a couple of days ago on how to trick runInstaller into thinking the OS is Redhat AS, but tonight when looking for this document I cannot find it.
Does anybody know how to do this? I'm downloading a developer edition of UnitedLinux right now, but I'm really interested in attempting to install the single-box install on Mandrake 9.1. One reason because I'm more familiar with that distribution, and also because I'm curious to see if it will work.
Thanks,
MichaelI've done it on red hat 7.3 - no issues besides relinking for the ias components.
runInstaller -ignoreSysPrereqs
Can't rememeber the case, but if you run the runInstaller and pass an option or perhaps -? or -help it will show you a whole bunch of options. -
HT5858 how can I delete photos on my iPhone other than one at a time?
Can someone help me to delete photos from my iPhone other than one at a time.
Thankshttp://osxdaily.com/2012/08/02/delete-all-photos-from-iphone/
-
My hard disk crashed and I cannot find out how to "contact customer service" other than this forum. The website seems to just take me in a circle. I need to de-activate a license but cannot access the software due to a crashed hard drive. Please help.
Hi Anthony ,
Here is the link to connect with Adobe Chat Support.
https://helpx.adobe.com/adobe-connect/kb/connect-chat-support.html
Hope your query gets resolved .
Regards
Sukrit Dhingra -
Dg4odbc to connect to mysql rc 28500 something other than invalid authoriza
dg4odbc to connect to mysql rc 28500 something other than invalid authoriza
Hi,
We are trying to establish connectivity from oracle to mysql using dg4odbc and openlink ODBC drivers. I get the following error when queries are run on mysql tables from within
oracle/db links.
SQL> select * from "labels"@"dg4odbc.cisco.com"
2 ;
select * from "labels"@"dg4odbc.cisco.com"
ERROR at line 1:
ORA-28500: connection from ORACLE to a non-Oracle system returned this message:
ORA-02063: preceding line from DG4ODBC
contents of dg4odbc agent log is as below.
$ cat dg4odbc_agt_3168.trc
Oracle Corporation --- TUESDAY SEP 30 2008 05:37:56.658
Heterogeneous Agent Release
11.1.0.6.0
Oracle Corporation --- TUESDAY SEP 30 2008 05:37:56.655
Version 11.1.0.6.0
Entered hgogprd
HOSGIP for "HS_FDS_TRACE_LEVEL" returned "DEBUG"
Entered hgosdip
setting HS_OPEN_CURSORS to default of 50
setting HS_FDS_RECOVERY_ACCOUNT to default of "RECOVER"
setting HS_FDS_RECOVERY_PWD to default value
setting HS_FDS_TRANSACTION_LOG to default of "HS_TRANSACTION_LOG"
setting HS_FDS_TRANSACTION_ISOLATION to default of "READ_COMMITTED"
setting HS_NLS_NCHAR to default of "AL32UTF8"
setting HS_FDS_TIMESTAMP_AS_DATE to default of "TRUE"
setting HS_RPC_FETCH_REBLOCKING to default of "ON"
setting HS_FDS_FETCH_ROWS to default of "100"
setting HS_FDS_RESULTSET_SUPPORT to default of "FALSE"
setting HS_FDS_PROC_IS_FUNC to default of "FALSE"
setting HS_FDS_CHARACTER_SEMANTICS to default of "FALSE"
setting HS_FDS_MAP_NCHAR to default of "TRUE"
setting HS_NLS_DATE_FORMAT to default of "YYYY-MM-DD HH24:MI:SS"
setting HS_FDS_REPORT_REAL_AS_DOUBLE to default of "FALSE"
setting HS_LONG_PIECE_TRANSFER_SIZE to default of "65536"
setting HS_SQL_HANDLE_STMT_REUSE to default of "FALSE"
setting HS_FDS_QUERY_DRIVER to default of "TRUE"
HOSGIP returned value of "FALSE" for HS_FDS_SUPPORT_STATISTICS
setting HS_CALL_NAME_ISP to "gtw$:SQLTables;gtw$:SQLColumns;gtw$:SQLPrimaryKeys;gtw$:SQLForeignKeys;gtw$:SQLProcedures;gtw$:SQLStatistics"
Exiting hgosdip, rc=0
ORACLE_SID is "dg4odbc"
Product-Info:
Port Rls/Upd:6/0 PrdStat:0
Agent:Oracle Database Gateway for ODBC
Facility:hsa
Class:ODBC, ClassVsn:11.1.0.6.0_0006, Instance:dg4odbc
Exiting hgogprd, rc=0
Entered hgoinit
HOCXU_COMP_CSET=1
HOCXU_DRV_CSET=873
HOCXU_DRV_NCHAR=873
HOCXU_DB_CSET=873
HOCXU_SEM_VER=90200
Entered hgolofn at 2008/09/30-05:37:57
HOSGIP for "HS_FDS_SHAREABLE_NAME" returned "/export/home/oratest/openlink/lib/libiodbc.so"
Entered hgolofns at 2008/09/30-05:37:57
HOSGIP for "HS_OPEN_CURSORS" returned "50"
HOSGIP for "HS_FDS_FETCH_ROWS" returned "100"
HOSGIP for "HS_LONG_PIECE_TRANSFER_SIZE" returned "65536"
HOSGIP for "HS_NLS_NUMERIC_CHARACTER" returned ".,"
Exiting hgoinit, rc=0 at 2008/09/30-05:37:57
Entered hgolgon at 2008/09/30-05:37:57
reco:0, name:odbc_26530, tflag:0
Entered hgosuec at 2008/09/30-05:37:57
Exiting hgosuec, rc=0 at 2008/09/30-05:37:57
HOSGIP for "HS_FDS_RECOVERY_ACCOUNT" returned "RECOVER"
HOSGIP for "HS_FDS_TRANSACTION_LOG" returned ""HS_TRANSACTION_LOG""
HOSGIP for "HS_FDS_TIMESTAMP_AS_DATE" returned "TRUE"
HOSGIP for "HS_FDS_CHARACTER_SEMANTICS" returned "FALSE"
HOSGIP for "HS_FDS_MAP_NCHAR" returned "TRUE"
HOSGIP for "HS_FDS_RESULT_SET_SUPPORT" returned "FALSE"
HOSGIP for "HS_FDS_PROC_IS_FUNC" returned "FALSE"
HOSGIP for "HS_FDS_REPORT_REAL_AS_DOUBLE" returned "FALSE"
using odbc_26530 as default value for "HS_FDS_DEFAULT_OWNER"
HOSGIP for "HS_SQL_HANDLE_STMT_REUSE" returned "FALSE"
Entered hgocont at 2008/09/30-05:37:57
HS_FDS_CONNECT_INFO = "dg4odbc"
HS_FDS_CONNECT_STRING = "OptimizePrepare=2"
Entered hgogenconstr at 2008/09/30-05:37:57
dsn:dg4odbc, name:odbc_26530
optn:OptimizePrepare=2
##>Connect Parameters (len=57)<##
## DSN=dg4odbc;
#! UID=odbc_26530;
#! PWD=*
## OptimizePrepare=2;
Exiting hgogenconstr, rc=0 at 2008/09/30-05:37:57
Entered hgopoer at 2008/09/30-05:37:57
Exiting hgopoer, rc=0 at 2008/09/30-05:37:57 with error ptr FILE:hgopoer.c LINE:128 ID:GetDiagRec error
hgocont, line 1904: calling SqlDriverConnect got sqlstate
Exiting hgocont, rc=28500 at 2008/09/30-05:37:57 with error ptr FILE:hgocont.c LINE:1923 ID:Something other than invalid authorization
Exiting hgolgon, rc=28500 at 2008/09/30-05:37:57 with error ptr FILE:hgolgon.c LINE:612 ID:Calling hgocont
Entered hgoexit at 2008/09/30-05:37:57
$
Here is my setup
Source : oracle 9208 on solaris + Patch_p5965763_9208_solaris64
dg4odbc component on a different home
9i and 11g listeners.
Target : Mysql 5.x on linux sever
ODBC Driver manager and driver : Openlink single tier driver for mysql.
he last lines of dg4odbc agent states an error "something other then invalid authorization"(see below)..
Entered hgopoer at 2008/09/30-05:37:57
Exiting hgopoer, rc=0 at 2008/09/30-05:37:57 with error ptr FILE:hgopoer.c LINE:128 ID:GetDiagRec error
hgocont, line 1904: calling SqlDriverConnect got sqlstate
Exiting hgocont, rc=28500 at 2008/09/30-05:37:57 with error ptr FILE:hgocont.c LINE:1923 ID:Something other than invalid authorization
Exiting hgolgon, rc=28500 at 2008/09/30-05:37:57 with error ptr FILE:hgolgon.c LINE:612 ID:Calling hgocont
Entered hgoexit at 2008/09/30-05:37:57
Has anyone encountered similar issue while configuring dg4odbc....I never had trouble with hsodbc. Since hsodbc is desupported , We are evaluating dg4odbc and openlink odbc
drivers to establish connectivity to mysql and stuck at this point.
Any suggestion from gateway gurus ?
Thanks in advance,
BhaskarContent of Important config files is as below.
Source : oracle 9208 on solaris + Patch_p5965763_9208_solaris64
dg4odbc component on a different home
9i and 11g listeners.
Target : Mysql 5.x on linux sever
ODBC Driver manager and driver : Openlink single tier driver for mysql.
contents of key config files are as below.
contents of 9i tnsnames.ora
# To Test DG4ODBC Config
dg4odbc =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = ora-dev2)
(PORT = 1556)
(CONNECT_DATA =
(SID= dg4odbc)
(HS=OK)
contents of 11g listener file
$ cat listener.ora
# listener.ora Network Configuration File: /u03/orapoc/oracle/product/dg4odbc/network/admin/listener.ora
# Generated by Oracle configuration tools.
TRACE_LEVEL_LISTENER_DG = USER
LISTENER_DG =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ora-dev2)(PORT = 1556))
LOG_FILE_LISTENER_DG = LISTENER_DG.log
TRACE_DIRECTORY_LISTENER_DG = /u03/orapoc/oracle/product/dg4odbc/network/trace
SID_LIST_LISTENER_DG =
(SID_LIST =
(SID_DESC =
(ORACLE_HOME = /u03/orapoc/oracle/product/dg4odbc)
(SID_NAME = dg4odbc)
(ENVS = "LD_LIBRARY_PATH=/export/home/oratest/openlink/lib:/u03/orapoc/oracle/product/dg4odbc/lib")
(PROGRAM = dg4odbc)
LOG_DIRECTORY_LISTENER_DG = /u03/orapoc/oracle/product/dg4odbc/network/log
TRACE_FILE_LISTENER_DG = LISTENER_DG.trc
contents of initdg4odbc.ora
$ pwd
/u03/orapoc/oracle/product/dg4odbc/hs/admin
$ ls
initdg4odbc.ora initdg4odbc.ora.orig listener.ora.sample tnsnames.ora.sample
$ cat initdg4odbc.ora
# This is a sample agent init file that contains the HS parameters that are
# needed for an ODBC Agent.
# HS init parameters
HS_FDS_CONNECT_INFO=dg4odbc
HS_FDS_TRACE_LEVEL = DEBUG
HS_FDS_TRACE_FILE_NAME = dg_mysql.log
HS_FDS_CONNECT_STRING = "OptimizePrepare=2"
HS_FDS_SHAREABLE_NAME=/export/home/oratest/openlink/lib/libiodbc.so
HS_FDS_SUPPORT_STATISTICS=FALSE
# ODBC specific environment variables
set ODBCINI=/export/home/oratest/openlink/bin/odbc.ini
set ODBCINSTINI=/export/home/oratest/openlink/bin/odbcinst.ini
set OPENLINKINI=/export/home/oratest/openlink/bin/openlink.ini
set OPL_LICENSE_DIR=/export/home/oratest/openlink/bin/
# Environment variables required for the non-Oracle system
#set <envvar>=<value>
set LD_LIBRARY_PATH=/export/home/oratest/openlink/lib:/u03/orapoc/oracle/product/dg4odbc/lib
contents of odbc.ini
$ cat /export/home/oratest/openlink/bin/odbc.ini
; odbc.ini
; ODBC DSN configuration file
; This file is an OpenLink Software product configuration file.
; To learn more about this product, or any other product in our
; portfolio, please check out our web site at:
; http://www.openlinksw.com
; or contact us at:
; [email protected]
; If you have any technical questions, please contact our support
; staff at:
; [email protected]
[ODBC Data Sources]
mys5_lite = OpenLink MySQL 5.x Lite Driver (multi threaded)
mys5_lite_unicode = OpenLink MySQL 5.x Lite Driver (Unicode)(multi threaded)
dg4odbc = OpenLink MySQL 5.x Lite Driver (multi threaded)
[mys5_lite]
Driver = /export/home/oratest/openlink/lib/mys5_mt_lt.so
ServerType = MySQL 5.x
Username =
Password =
Database =
Options =
FetchBufferSize = 99
ReadOnly =
DeferLongFetch =
JetFix = No
Description = Sample MySQL 5.x Lite Connection
MaxRows =
NoRowSetSizeLimit = No
InitialSQL =
NoAutoCommit = No
NoLoginBox =
SqlDbmsName =
[mys5_lite_unicode]
Driver = /export/home/oratest/openlink/lib/mys5_mt_lu.so
ServerType = MySQL 5.x
Username =
Password =
Database =
Options =
FetchBufferSize = 99
ReadOnly = no
DeferLongFetch = no
JetFix = no
Description = Sample MySQL 5.x Lite Connection
[dg4odbc]
DeferLongFetch =
MaxRows = 1000000
JetFix = No
NoRowSetSizeLimit = No
Description = Openlink Unix Lite DSN
Options = -H odbctest.power.com -P 3329
UserName = odbc_test
Password = abcdef
ServerType = MySQL 5.x
InitialSQL =
Driver = /export/home/oratest/openlink/lib/mys5_mt_lt.so
Database = linksys__dev
ReadOnly =
NoAutoCommit = No
NoLoginBox =
FetchBufferSize = 99
SqlDbmsName =
[ODBC]
DebugFile = /export/home/oratest/openlink/mysql_debug
TraceFile = /export/home/oratest/openlink/openlink_mysql
Trace = 1 -
Boot into something other than hard drive
I'm having problems partitioning in boot camp, so I read that I should defrag my drive. I'm getting the error because it can't move certain files.
So I'm using iDefrag, but it won't let me use most of the defrag options because I'm using the disk it is defraging. I tried to boot using the leopard disk that came with my macbook, but I can only use certain programs while this disk is open.
What do I need to do to boot into something other than the hard drive to defrag?Hi again,
found this procedure http://www.bradbergeron.com/2006/11/howto-install-and-boot-os-x-on-a-flash-drive / to install and boot a basic OSX on an USB Memory Stick.
Since this How-To was written for OSX Tiger you might consider getting a bigger sized USB-Stick for the space OSX Leopard needs.
Regards
Stefan
Message was edited by: Fortuny -
Assign boot drive letter to something other than C
When setting up XP Mode, is there any way to assign the boot drive to something other than C? I know once it's set up it's next to impossible to change, but there should be a way to assign it during setup. Any ideas??
Hi,
Why do you want to change system drive letter in Windows XP mode? As you said, you're not allowed to do that. Based on my test, you can succeed in changing this drive letter C: to other letters through registry, after you attach another virtual disk
(eg E:) into XP. However, It will damage your XP system, which proves not to be a good solution provided in Internet. So I recommend you not to change this letter.
Thanks!
Andy Altmann
TechNet Community Support -
TS3999 Change minimum duration to something other than 30 minutes
When scheduling an event in iCloud calendar, can you set the minimum duration in the pull down menu for "from" to something other than 30 minutes?
For example, if you schedule an even at 9:00 AM, the shortest time available in the pull down down menu will read "9:30". I know I can manually type any time I want, but I was looking for a way to change the default options.Maybe you can try to build something in Front Row, although I do not think it will allow this flexibility in time frames.
-
How to upgrade to something other than the most recent OS
I am currently running Os 10.6.8. I would like to update, but I have a critical application that is only qualified for 10.8.2 and the current operating system is 10.8.4. Is there a way to buy something other than the current OS?
Apple updates the OS X installer at the Mac App Store with the latest version, and older OS X versions disappear. If you want to upgrade to Mountain Lion and you purchase Mountain Lion at the App Store, you will get the OS X Mountain Lion installer with 10.8.4 installed, so it will install 10.8.4, without any possibility to install 10.8.2.
You can try changing system files to look like you are using 10.8.1 and try applying the 10.8.2 update, but doing this you may damage OS X Mountain Lion -
I'm trying to create an import script for RDBMS to import users, but cannot figure out how to set the "PASS_TYPE_RADIUS_TOKEN" to something other than the default of "RADIUS Token Server". We have multiple RADIUS Token Server definitions.
I can create a user with what I need, except external db password is set to "RADIUS Token Server". How do I set it to (for example) something like "RADIUS Token Server - xxxx"
We have more than 1 RADIUS Token Server definition called "RADIUS Token Server - xxxx", "RADIUS Token Server - yyyy".
Thanks!As per my knowledge you have to update 4.2 ACS to
5.1, because when you go for RDBMS synchronization it wont allow you, I have faced problem in past while primary ACS was 4.1 and secondary I have 4.2, I have updated primary ACS to 4.2 and everything is working fine. -
I have created a tree table
create table subforums (
id NUMBER(5) primary key,
parent_id references subforums,
name varchar2(100)
And now i dont know how to delete a tree with a specified id and all of his children.
I tried to find out but i couldntHi,
When you delete a node and all of its children, what do you want to do with the grandchildren? If you want to set their parent_id to NULL, do that in a separate UPDATE statement first, then DELETE the original node and all its remaining descendants, as show below.
If, when you say "children", you mean "descendants" (including
children,
children of children,
children of children of children,
and so on, to any level,
) then do a CONNECT BY query to find their primary keys, and DELETE everything in that list, like this:
DELETE subforms
WHERE id IN
SELECT id
FROM subforms
START WITH id = :specified_id
CONNECT BY PRIOR id = parent_id
); -
Add/Edit/Delete Tree Nodes using CL_GUI_ALV_TREE
Hi All,
I am looking for an example of program with CL_GUI_ALV_TREE that have a functionality of add a tree node, edit a tree node, and delete a tree node.
I have already looked the BCALV_TREE* demo program but could not able to find a program to add/edit/delete node tree elements.
Any info on this.
Thanks
aRsHello aRs
Here is a sample report showing how to delete nodes in an ALV tree. The report was copied from BCALV_TREE_01. Search for added code:
*$ADDED: begin
*$ADDED: end[/code]
When you display the tree expand the first folder completely. When entering 'DELETE' into the command field directly the first flight date node will be deleted.
REPORT ZUS_SDN_BCALV_TREE_01_DELNODE.
based on: REPORT bcalv_tree_01.
Purpose:
~~~~~~~~
This report shows the essential steps to build up a hierarchy
using an ALV Tree Control (class CL_GUI_ALV_TREE).
Note that it is not possible to build up this hierarchy
using a simple ALV Tree Control (class CL_GUI_ALV_TREE_SIMPLE).
To check program behavior
~~~~~~~~~~~~~~~~~~~~~~~~~
Start this report. The hierarchy tree consists of nodes for each
month on top level (this level can not be build by a simple ALV Tree
because there is no field for months in our output table SFLIGHT.
Thus, you can not define this hierarchy by sorting).
Nor initial calculations neither a special layout has been applied
(the lines on the right do not show anything).
Note also that this example does not build up and change the
fieldcatalog of the output table. For this reason, all fields
of the output table are shown in the columns although the fields
CARRID and FLDATE are already placed in the tree on the left.
(Of course, this is not a good style. See BCALV_TREE_02 on how to
hide columns).
Essential steps (Search for '§')
~~~~~~~~~~~~~~~
1.Usual steps when using control technology.
1a. Define reference variables.
1b. Create ALV Tree Control and corresponding container.
2.Create Hierarchy-header
3.Create empty Tree Control
4.Create hierarchy (nodes and leaves)
4a. Select data
4b. Sort output table according to your conceived hierarchy
4c. Add data to tree
5.Send data to frontend.
6.Call dispatch to process toolbar functions
*$ADDED: begin
DATA:
gd_del_nkey TYPE lvc_nkey.
*$ADDED: end
§1a. Define reference variables
DATA: g_alv_tree TYPE REF TO cl_gui_alv_tree,
g_custom_container TYPE REF TO cl_gui_custom_container.
DATA: gt_sflight TYPE sflight OCCURS 0, "Output-Table
ok_code LIKE sy-ucomm,
save_ok LIKE sy-ucomm, "OK-Code
g_max TYPE i VALUE 255.
END-OF-SELECTION.
CALL SCREEN 100.
*& Module PBO OUTPUT
process before output
MODULE pbo OUTPUT.
SET PF-STATUS 'MAIN100'.
SET TITLEBAR 'MAINTITLE'.
IF g_alv_tree IS INITIAL.
PERFORM init_tree.
CALL METHOD cl_gui_cfw=>flush
EXCEPTIONS
cntl_system_error = 1
cntl_error = 2.
IF sy-subrc NE 0.
CALL FUNCTION 'POPUP_TO_INFORM'
EXPORTING
titel = 'Automation Queue failure'(801)
txt1 = 'Internal error:'(802)
txt2 = 'A method in the automation queue'(803)
txt3 = 'caused a failure.'(804).
ENDIF.
ENDIF.
ENDMODULE. " PBO OUTPUT
*& Module PAI INPUT
process after input
MODULE pai INPUT.
save_ok = ok_code.
CLEAR ok_code.
CASE save_ok.
WHEN 'EXIT' OR 'BACK' OR 'CANC'.
PERFORM exit_program.
*$ADDED: begin
WHEN 'DELETE'.
CALL METHOD g_alv_tree->delete_subtree
EXPORTING
i_node_key = gd_del_nkey
I_UPDATE_PARENTS_EXPANDER = SPACE
i_update_parents_folder = 'X'
EXCEPTIONS
node_key_not_in_model = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL METHOD g_alv_tree->frontend_update.
*$ADDED: end
WHEN OTHERS.
§6. Call dispatch to process toolbar functions
CALL METHOD cl_gui_cfw=>dispatch.
ENDCASE.
CALL METHOD cl_gui_cfw=>flush.
ENDMODULE. " PAI INPUT
*& Form init_tree
text
--> p1 text
<-- p2 text
FORM init_tree.
§1b. Create ALV Tree Control and corresponding Container.
create container for alv-tree
DATA: l_tree_container_name(30) TYPE c.
l_tree_container_name = 'CCONTAINER1'.
CREATE OBJECT g_custom_container
EXPORTING
container_name = l_tree_container_name
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5.
IF sy-subrc <> 0.
MESSAGE x208(00) WITH 'ERROR'(100).
ENDIF.
create tree control
CREATE OBJECT g_alv_tree
EXPORTING
parent = g_custom_container
node_selection_mode = cl_gui_column_tree=>node_sel_mode_single
item_selection = 'X'
no_html_header = 'X'
no_toolbar = ''
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
illegal_node_selection_mode = 5
failed = 6
illegal_column_name = 7.
IF sy-subrc <> 0.
MESSAGE x208(00) WITH 'ERROR'. "#EC NOTEXT
ENDIF.
§2. Create Hierarchy-header
The simple ALV Tree uses the text of the fields which were used
for sorting to define this header. When you use
the 'normal' ALV Tree the hierarchy is build up freely
by the programmer this is not possible, so he has to define it
himself.
DATA l_hierarchy_header TYPE treev_hhdr.
PERFORM build_hierarchy_header CHANGING l_hierarchy_header.
§3. Create empty Tree Control
IMPORTANT: Table 'gt_sflight' must be empty. Do not change this table
(even after this method call). You can change data of your table
by calling methods of CL_GUI_ALV_TREE.
Furthermore, the output table 'gt_outtab' must be global and can
only be used for one ALV Tree Control.
CALL METHOD g_alv_tree->set_table_for_first_display
EXPORTING
i_structure_name = 'SFLIGHT'
is_hierarchy_header = l_hierarchy_header
CHANGING
it_outtab = gt_sflight. "table must be empty !
§4. Create hierarchy (nodes and leaves)
PERFORM create_hierarchy.
§5. Send data to frontend.
CALL METHOD g_alv_tree->frontend_update.
wait for automatic flush at end of pbo
ENDFORM. " init_tree
*& Form build_hierarchy_header
build hierarchy-header-information
-->P_L_HIERARCHY_HEADER strucxture for hierarchy-header
FORM build_hierarchy_header CHANGING
p_hierarchy_header TYPE treev_hhdr.
p_hierarchy_header-heading = 'Month/Carrier/Date'(300).
p_hierarchy_header-tooltip = 'Flights in a month'(400).
p_hierarchy_header-width = 30.
p_hierarchy_header-width_pix = ' '.
ENDFORM. " build_hierarchy_header
*& Form exit_program
free object and leave program
FORM exit_program.
CALL METHOD g_custom_container->free.
LEAVE PROGRAM.
ENDFORM. " exit_program
*& Form create_hierarchy
text
--> p1 text
<-- p2 text
FORM create_hierarchy.
DATA: ls_sflight TYPE sflight,
lt_sflight TYPE sflight OCCURS 0,
l_yyyymm(6) TYPE c, "year and month of sflight-fldate
l_yyyymm_last(6) TYPE c,
l_carrid LIKE sflight-carrid,
l_carrid_last LIKE sflight-carrid.
DATA: l_month_key TYPE lvc_nkey,
l_carrid_key TYPE lvc_nkey,
l_last_key TYPE lvc_nkey.
§4a. Select data
SELECT * FROM sflight INTO TABLE lt_sflight UP TO g_max ROWS.
§4b. Sort output table according to your conceived hierarchy
We sort in this order:
year and month (top level nodes, yyyymm of DATS)
carrier id (next level)
day of month (leaves, dd of DATS)
SORT lt_sflight BY fldate0(6) carrid fldate6(2).
Note: The top level nodes do not correspond to a field of the
output table. Instead we use data of the table to invent another
hierarchy level above the levels that can be build by sorting.
§4c. Add data to tree
LOOP AT lt_sflight INTO ls_sflight.
Prerequesite: The table is sorted.
You add a node everytime the values of a sorted field changes.
Finally, the complete line is added as a leaf below the last
node.
l_yyyymm = ls_sflight-fldate+0(6).
l_carrid = ls_sflight-carrid.
Top level nodes:
IF l_yyyymm <> l_yyyymm_last. "on change of l_yyyymm
l_yyyymm_last = l_yyyymm.
*Providing no key means that the node is added on top level:
PERFORM add_month USING l_yyyymm
CHANGING l_month_key.
The month changed, thus, there is no predecessor carrier
CLEAR l_carrid_last.
ENDIF.
Carrier nodes:
(always inserted as child of the last month
which is identified by 'l_month_key')
IF l_carrid <> l_carrid_last. "on change of l_carrid
l_carrid_last = l_carrid.
PERFORM add_carrid_line USING ls_sflight
l_month_key
CHANGING l_carrid_key.
ENDIF.
Leaf:
(always inserted as child of the last carrier
which is identified by 'l_carrid_key')
PERFORM add_complete_line USING ls_sflight
l_carrid_key
CHANGING l_last_key.
ENDLOOP.
ENDFORM. " create_hierarchy
*& Form add_month
FORM add_month USING p_yyyymm TYPE c
p_relat_key TYPE lvc_nkey
CHANGING p_node_key TYPE lvc_nkey.
DATA: l_node_text TYPE lvc_value,
ls_sflight TYPE sflight,
l_month(15) TYPE c. "output string for month
get month name for node text
PERFORM get_month USING p_yyyymm
CHANGING l_month.
l_node_text = l_month.
add node:
ALV Tree firstly inserts this node as a leaf if you do not provide
IS_NODE_LAYOUT with field ISFOLDER set. In form 'add_carrid_line'
the leaf gets a child and thus ALV converts it to a folder
automatically.
CALL METHOD g_alv_tree->add_node
EXPORTING
i_relat_node_key = p_relat_key
i_relationship = cl_gui_column_tree=>relat_last_child
i_node_text = l_node_text
is_outtab_line = ls_sflight
IMPORTING
e_new_node_key = p_node_key.
ENDFORM. " add_month
FORM add_carrid_line USING ps_sflight TYPE sflight
p_relat_key TYPE lvc_nkey
CHANGING p_node_key TYPE lvc_nkey.
DATA: l_node_text TYPE lvc_value,
ls_sflight TYPE sflight.
add node
ALV Tree firstly inserts this node as a leaf if you do not provide
IS_NODE_LAYOUT with field ISFOLDER set. In form 'add_carrid_line'
the leaf gets a child and thus ALV converts it to a folder
automatically.
l_node_text = ps_sflight-carrid.
CALL METHOD g_alv_tree->add_node
EXPORTING
i_relat_node_key = p_relat_key
i_relationship = cl_gui_column_tree=>relat_last_child
i_node_text = l_node_text
is_outtab_line = ls_sflight
IMPORTING
e_new_node_key = p_node_key.
ENDFORM. " add_carrid_line
*& Form add_complete_line
FORM add_complete_line USING ps_sflight TYPE sflight
p_relat_key TYPE lvc_nkey
CHANGING p_node_key TYPE lvc_nkey.
DATA: l_node_text TYPE lvc_value.
WRITE ps_sflight-fldate TO l_node_text MM/DD/YYYY.
add leaf:
ALV Tree firstly inserts this node as a leaf if you do not provide
IS_NODE_LAYOUT with field ISFOLDER set.
Since these nodes will never get children they stay leaves
(as intended).
CALL METHOD g_alv_tree->add_node
EXPORTING
i_relat_node_key = p_relat_key
i_relationship = cl_gui_column_tree=>relat_last_child
is_outtab_line = ps_sflight
i_node_text = l_node_text
IMPORTING
e_new_node_key = p_node_key.
*$ADDED: begin
IF ( ps_sflight-fldate = '20040522' ). " first flight date
IF ( gd_del_nkey IS INITIAL ). " collect only first date
gd_del_nkey = p_node_key.
ENDIF.
ENDIF.
*$ADDED: end
ENDFORM. " add_complete_line
*& Form GET_MONTH
text
-->P_P_YYYYMM text
<--P_L_MONTH text
FORM get_month USING p_yyyymm
CHANGING p_month.
Returns the name of month according to the digits in p_yyyymm
DATA: l_monthdigits(2) TYPE c.
l_monthdigits = p_yyyymm+4(2).
CASE l_monthdigits.
WHEN '01'.
p_month = 'January'(701).
WHEN '02'.
p_month = 'February'(702).
WHEN '03'.
p_month = 'March'(703).
WHEN '04'.
p_month = 'April'(704).
WHEN '05'.
p_month = 'May'(705).
WHEN '06'.
p_month = 'June'(706).
WHEN '07'.
p_month = 'July'(707).
WHEN '08'.
p_month = 'August'(708).
WHEN '09'.
p_month = 'September'(709).
WHEN '10'.
p_month = 'October'(710).
WHEN '11'.
p_month = 'November'(711).
WHEN '12'.
p_month = 'December'(712).
ENDCASE.
CONCATENATE p_yyyymm+0(4) '->' p_month INTO p_month.
ENDFORM. " GET_MONTH
/code
Regards
Uwe -
Hello All
I am Creating a Tree and It is going to Populate only when the Node is Expanded.
I.E. the Child records are created only when the Node is Expanded.
What we Did is that when we are creating a Parent Node, we are populating a dummy child node to the Parent Node, so that the + sign will be shown.
Now when I am Expanding the + sign, it has to delete the Dummy child node and then create the Child nodes under the Dummy one.
For this One I am unable to Find a solution.
PLEASE HELP ME REGARDING THIS ONE.
THIS PROBLEM IS RELATING TO FORMSIn the when-tree-node-expanded trigger.
Store the system.trigger_node. This is the parent.
Search, starting with the parent, for a child which has the value/label that you gave the dummy node. Did you find one? If yes then delete it.
If you didn't find one then you stop as you've already expanded this node I guess.
After you delete the child you must then add the new children. So loop through the code that produces the list of new children you want, and add them under the parent that you started with.
Hope this helps.
Maybe you are looking for
-
Hi All, When I am dispatching an activity through CM22, I am getting error "Error during scheduling of splits-An error ocurred during scheduling of splits.The cause of the error may be a person is not available during the split period" Does this is d
-
Pal/NTSC video to tv quest
Hello, If I add some PAL formatted videos to my Zen Vision: M can I then play them on a TV by using the video hook-up cables? I know that US tvs use NTSC and cannot play Pal, but I am hoping that by first adding them to my Vision I can get the same q
-
Adding Field to maintenance view
Hi I have added a field to Z Table wich has already created a maintenance view (SM30) , but this field does not appears in maintenance view even the table is active. (This is a basic Z table with one key field, the new field is not key field) I go t
-
IPhoto is the lamest photo editing program ever!
Is it just me or is iPhoto the lamest photo editing program ever? I had photoshop elements on my windows machine and was happy my new MAC came with iphoto & iMovie. Now that I have tried to use it I find it doesn't do much in the editing department.
-
Question about Missing Timecard Report
Hi, I have a question about Missing Timecard Report. As I aware when we run it it will only pull employee who has Timecard required = 'Yes' in the GRE of assignment. I just run it and it pull all employee regardless they have Timecard required = 'Yes