Program history v9
Hello,
Noob here, my customer asked the following: Tell me what programs these userids use. She thought v$session, but that's only current (I could query it as a job and build up a history).
We keep a session audit history, but it has the following cols (note program is not one)
HOST_NAME, DATABASE_NAME, DOMAIN_NAME, SESSIONID, ENTRYID,
STATEMENT, "TIMESTAMP#", USERID, USERHOST, TERMINAL,
"ACTION#", RETURNCODE, OBJ$CREATOR, OBJ$NAME,
AUTH$PRIVILEGES, AUTH$GRANTEE, NEW$OWNER, NEW$NAME,
SES$ACTIONS, SES$TID, LOGOFF$LREAD, LOGOFF$PREAD,
LOGOFF$LWRITE, LOGOFF$DEAD, LOGOFF$TIME, COMMENT$TEXT,
CLIENTID, SPARE1, SPARE2, OBJ$LABEL, SES$LABEL, PRIV$USED,
SESSIONCPU, STATUS_DATE,
to_char("NTIMESTAMP#") AS "NTIMESTAMP#", PROXY$SID,
USER$GUID, "INSTANCE#", "PROCESS#", XID, AUDITID, SCN, DBID,
SQLBIND, SQLTEXT
It's v9 so Hist_Active_Sess_History is not available.
Any help Gratefully accepted
LarryO
You can't do it accurately using v$session so think again.
v9 is meaningless ... post a full and complete version number.
What you need is auditing.
http://www.psoug.org/reference/auditing.html
Look for "executable procedure"
Then follow up by reading the docs at http://tahiti.oracle.com
Similar Messages
-
Where we can find the deleted programs history
Dear friends,
where we can find the deleted programs history like who is deleted and when it is deleted like ...
Thanks
Sri.Hi Sridher,
I dont think it is possible. Once you delete a program, it is removed from data dictionary and history of deleted program is not maintained...
Best Regards,
Ram. -
i have one program . i want to know that program who has exicuted that program with date and time they run that program
how can i know that .
pls help me .thanks
but in this iam getting only with my user .but i need to get for all the user who acces the program. -
Am i able to retrieve deleted browsing history items? How?
I have some items from my browsing history that i want to view but they were deleted I was just wondering if i can retrieve them.
he easy and quick way to restore file and activity History is the System Restore feature. Since much history is saved into the Windows Registry, restoring it to a previous state will restore file and program History. Revert your computer back to the desired date and enjoy restored History.
If a user has used eraser track programs such as Ad-aware or Spybot, this method will not work and you will need to access the lesser known log files that Windows keeps (the "index.dat" files). Search for "index.dat" on your computer, you will need to download Super WinSpy to view them.
If a user has used advanced tools to erase usage tracks, program logs, registry history and the index.dat files, restore is more difficult. Try using a disk editor to directly access hard disk sectors. -
Guys,
I want to download the programs from application server into one folder.If there is any program please help on this.
If there is any attachment please mail to this id.
mailid:[email protected]
regards,
vijayHI Vijay,
the following program works on 47..
[code]
REPORT ZDOWN.
$$================================================================$$
Direct download ver 4.12.
THIS SOFTWARE IS FOR PERSONAL USE ONLY.
THIS PROGRAM IS FREEWARE AND IS PROVIDED ON AN AS-IS BASIS
WITHOUT WARRANTY OF ANY KIND.
THE PROVIDER SPECIFICALLY DISCLAIMS ANY OTHER WARRANTY,
EXPRESS OR IMPLIED, INCLUDING ANY WARRANTY OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL PROVIDER BE LIABLE FOR ANY CONSEQUENTIAL,
INDIRECT, SPECIAL OR INCIDENTAL DAMAGES, EVEN IF PROVIDER
HAS BEEN ADVISED BY CLIENT OF THE POSSIBILITY OF SUCH
POTENTIAL LOSS OR DAMAGE. CLIENT AGREES TO HOLD PROVIDER
HARMLESS FROM AND AGAINST ANY AND ALL CLAIMS, LOSSES,
LIABILITIES AND EXPENSES. BY INSTALLING OR RUNNING
THIS PROGRAM YOU ARE AGREEING TO THE TERMS AND CONDITONS STATED
ABOVE.
$$----
$$
PROGRAM DESCRIPTION
Allows a user to download ABAPs, Functions DD definitions, etc to
the presentation server. This version searches recursively for
nested includes and function modules, and allows you to download
the resulting code as standard text or HTML web pages.
Compatible with R/3 versions 3 and 4.
$$----
$$
AUTHORS : E.Mellodew & John Davies-Hale
PROGRAM HISTORY
1.0 Original program created
2.0 Modified selection texts so they are now stored within
the actual abap program.
Added functionality to download text elements and selection
texts for any downloaded online programs.
Added functionality to download message classes.
Added functionality to download screens.
2.1 Fixed program names being truncated when downloading
programs on version 4 systems.
3.0 New version - allows you to download files in HTML format as
well as text format.
3.1 Added the ability to download nested include programs.
3.2 Added the ability to download custom dictionary structures
referenced within programs.
Added the option to include/exclude local private objects.
Fixed problem with HTML documents not displaying correctly
within Netscape Communicator.
3.21 Added domain name texts to HTML dictionary structure download.
Fixed issue whereby field symbols displayed incorrectly within
HTML documents.
4.00 Re-structured program.
Increased scope of options on parameter screen
Created user friendly screen showing downloads
Allows user to download function modules
Program is now fully recursive and allows downloading of
includes within includes/functions
and functions within functions/includes.
4.02 Added ability to download module pools
Added 'key' flag to dictionary downloads
4.03 Screen 1000's can now be downloaded if they belong to a
module pool and are not a parameter screen
4.10 Added ability to download function module documentation
4.11 Problem with some documentation not being downloaded fixed
Limitations
SAP does not have the provision to create sub-folders at present.
Messages are not downloaded for nested includes
TABLES - DATABASES
TABLES: RS38M, TADIR, TRDIR, DD01T, "REPOSRC,
TRDIRE, T100, TLIBV,
DD02L, DD03L, DD04T, V_FDIR, TFDIR, TFTIT, D010INC, DD02T.
TYPES
*----- Text element structure
TYPES: T_TEXTTAB LIKE TEXTPOOL.
*--- Message classes
TYPES: BEGIN OF T_MESSAGES,
MSGID LIKE TRDIRE-MSGID,
MSGNR LIKE T100-MSGNR,
TEXT LIKE T100-TEXT,
END OF T_MESSAGES.
*--- screen flow.
TYPES: BEGIN OF T_SCREEN_FLOW,
SCREEN LIKE D020S-DNUM,
CODE LIKE D022S-LINE,
END OF T_SCREEN_FLOW.
*--- Data dictionary objects - tables, structures.
TYPES: BEGIN OF T_DICT_STRUCT,
TABNAME LIKE DD03L-TABNAME,
TABTEXT LIKE DD02T-DDTEXT,
FIELDNAME LIKE DD03L-FIELDNAME,
POSITION LIKE DD03L-POSITION,
KEYFLAG LIKE DD03L-KEYFLAG,
ROLLNAME LIKE DD03L-ROLLNAME,
DOMNAME LIKE DD03L-DOMNAME,
DATATYPE LIKE DD03L-DATATYPE,
LENG LIKE DD03L-LENG,
DDTEXT LIKE DD04T-DDTEXT,
END OF T_DICT_STRUCT.
*--- Function Modules
TYPES: BEGIN OF T_FUNCTIONS,
FUNCNAME LIKE TFDIR-FUNCNAME,
INCLUDE LIKE TFDIR-INCLUDE,
PNAME LIKE TFDIR-PNAME,
STEXT LIKE TFTIT-STEXT,
END OF T_FUNCTIONS.
*--- Include program names
TYPES: BEGIN OF T_INCLUDES,
PROG LIKE TRDIR-NAME,
TEXT(255),
END OF T_INCLUDES.
*----- ABAP program list
TYPES: BEGIN OF T_PROGRAMMES,
DEVCLASS LIKE TADIR-DEVCLASS,
PROG LIKE TRDIR-NAME,
TEXT(255),
SUBC(1) TYPE C,
FUNCTIONS TYPE T_FUNCTIONS OCCURS 0,
END OF T_PROGRAMMES.
DATA - INTERNAL TABLES
*---- Program texts - declaration only not used
DATA: I_TEXTTAB TYPE T_TEXTTAB OCCURS 0 WITH HEADER LINE.
DATA: I_MESSAGES TYPE T_MESSAGES OCCURS 0 WITH HEADER LINE.
DATA: I_SCREEN_FLOW TYPE T_SCREEN_FLOW.
*----- Program content for text download
DATA: BEGIN OF CONTENT OCCURS 0,
LINE(255),
END OF CONTENT.
*--- Programme texts.
DATA: I_PROGRAMME_TEXTS TYPE T_TEXTTAB OCCURS 0 WITH HEADER LINE.
*--- dictionary object
DATA: I_DICTIONARY TYPE T_DICT_STRUCT OCCURS 0 WITH HEADER LINE.
*--- Allows HTML routines to create an HTML without the table name on
each line.
DATA: BEGIN OF I_DICT_MINUS_TABNAME OCCURS 0,
fieldname like dd03l-fieldname,
position like dd03l-position,
KEYFLAG LIKE DD03L-KEYFLAG,
rollname like dd03l-rollname,
domname like dd03l-domname,
datatype like dd03l-datatype,
leng like dd03l-leng,
ddtext like dd04t-ddtext,
END OF I_DICT_MINUS_TABNAME.
*--- Table names of customer tables, used for searching for tables
DATA: BEGIN OF TABLE_NAMES OCCURS 0,
TABNAME LIKE I_DICTIONARY-TABNAME,
TABTEXT LIKE DD02T-DDTEXT,
END OF TABLE_NAMES.
*--- Function Modules.
DATA: I_FUNCTIONS TYPE T_FUNCTIONS OCCURS 0 WITH HEADER LINE.
DATA: I_FUNCTIONS_2 TYPE T_FUNCTIONS OCCURS 0 WITH HEADER LINE.
*--- Customer function names, used for searching for functions
DATA: BEGIN OF FUNCTION_NAMES OCCURS 0,
FUNCNAME LIKE I_FUNCTIONS-FUNCNAME,
END OF FUNCTION_NAMES.
DATA: BEGIN OF I_PROGRAMMES OCCURS 0,
DEVCLASS LIKE TADIR-DEVCLASS,
PROG LIKE TRDIR-NAME,
TEXT(255),
SUBC(1) TYPE C,
MESSAGES TYPE T_MESSAGES OCCURS 0,
TEXT_ELEMENTS TYPE T_TEXTTAB OCCURS 0,
SELECTION_TEXTS TYPE T_TEXTTAB OCCURS 0,
SCREEN_FLOW TYPE T_SCREEN_FLOW OCCURS 0,
INCLUDES TYPE T_INCLUDES OCCURS 0,
FUNCTIONS TYPE T_FUNCTIONS OCCURS 0,
DICT_STRUCT TYPE T_DICT_STRUCT OCCURS 0,
END OF I_PROGRAMMES.
*--- Names of function modules used within programmes
data: i_prog_includes type t_includes occurs 0 with header line.
*--- Includes to download
DATA: I_INCLUDES LIKE I_PROGRAMMES OCCURS 0 WITH HEADER LINE.
*--- Tree display structure.
DATA: I_NODE LIKE SNODETEXT OCCURS 0 WITH HEADER LINE.
*--- Temp table of downloaded objects.
DATA: BEGIN OF I_DOWNLOADED OCCURS 0,
OBJECT(30),
END OF I_DOWNLOADED.
DATA - WORKING FIELDS
DATA: FOOTER_MESSAGE LIKE CONTENT-LINE.
DATA: MESS(100).
DATA: TEMP_FUNC_NAME LIKE I_FUNCTIONS-FUNCNAME.
DATA: FORCED_EXIT TYPE I VALUE 0.
DATA: START_TIME LIKE SY-UZEIT.
DATA: RUN_TIME LIKE SY-UZEIT.
DATA: RUN_TIME_CHAR(8).
RANGES: S_PROG FOR TRDIR-NAME.
RANGES: S_DEV FOR TADIR-DEVCLASS.
RANGES: S_AUTH FOR USR02-BNAME.
RANGES: S_TABLE FOR DD02L-TABNAME.
RANGES: S_FNAME FOR TFDIR-FUNCNAME.
RANGES: S_FGROUP FOR ENLFDIR-AREA.
CONSTANTS
CONSTANTS: C_TABLES(6) VALUE 'TABLES'.
CONSTANTS: C_LIKE(4) VALUE 'LIKE'.
CONSTANTS: C_TYPE(4) VALUE 'TYPE'.
CONSTANTS: C_STRUCTURE(9) VALUE 'STRUCTURE'.
CONSTANTS: C_COMMA(1) VALUE ','.
CONSTANTS: C_PERIOD(1) VALUE '.'.
CONSTANTS: C_VERSION_NO(4) VALUE '4.12'.
SELECTION SCREEN
*--- Author
SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME TITLE T_B1.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 5(23) T_AUTH.
PARAMETERS: P_AUTH LIKE USR02-BNAME.
selection-screen end of line.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 5(36) T_PMOD.
parameters: p_mod as checkbox.
selection-screen end of line.
SELECTION-SCREEN: END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE T_B2.
*--- Tables
selection-screen begin of line.
PARAMETERS: R_TABLE RADIOBUTTON GROUP R1.
SELECTION-SCREEN COMMENT 5(20) T_RTABLE.
selection-screen end of line.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) T_PTABLE.
PARAMETERS: P_TABLE LIKE DD02L-TABNAME.
SELECTION-SCREEN END OF LINE.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 10(69) T_TNOTE.
selection-screen end of line.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 14(61) T_TNOTE1.
selection-screen end of line.
*--- Function Modules
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: R_FUNC RADIOBUTTON GROUP R1.
SELECTION-SCREEN COMMENT 5(30) T_RFUNC.
selection-screen end of line.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 10(18) T_PFNAME.
PARAMETERS: P_FNAME LIKE TFDIR-FUNCNAME.
selection-screen end of line.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 10(18) T_FGROUP.
PARAMETERS: P_FGROUP LIKE ENLFDIR-AREA.
selection-screen end of line.
*--- Programs / Includes
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: R_PROG RADIOBUTTON GROUP R1.
SELECTION-SCREEN COMMENT 5(18) T_RPROG.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) T_RPNAME.
PARAMETERS: P_PROG LIKE TRDIR-NAME MEMORY ID RID.
SELECTION-SCREEN END OF LINE.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 10(18) T_SDEV.
PARAMETERS: P_DEV LIKE TADIR-DEVCLASS.
selection-screen end of line.
*--- Local objects
SELECTION-SCREEN SKIP.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(27) T_$TMP.
PARAMETERS: P_$TMP AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK B2.
*----- Additional things to download.
SELECTION-SCREEN: BEGIN OF BLOCK B3 WITH FRAME TITLE T_B3.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(30) T_PTEXT.
PARAMETERS: P_TEXT AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(30) T_PMES.
PARAMETERS: P_MES AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(30) T_PINC.
PARAMETERS: P_INC AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN COMMENT 40(20) T_RECU.
PARAMETERS: P_RECI AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 1(30) T_PFUNC.
PARAMETERS: P_FUNC AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN COMMENT 40(20) T_RECF.
PARAMETERS: P_RECF AS CHECKBOX DEFAULT 'X'.
selection-screen end of line.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(30) T_DOC.
PARAMETERS: P_DOC AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
selection-screen begin of line.
SELECTION-SCREEN COMMENT 1(30) T_PSCR.
PARAMETERS: P_SCR AS CHECKBOX.
selection-screen end of line.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(30) T_PDICT.
PARAMETERS: P_DICT AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK B3.
*----- File details
SELECTION-SCREEN: BEGIN OF BLOCK B4 WITH FRAME TITLE T_B4.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) T_PHTML.
PARAMETERS: P_HTML RADIOBUTTON GROUP G1 DEFAULT 'X'.
SELECTION-SCREEN COMMENT 30(20) T_PHEXT.
PARAMETERS: P_HEX(4) TYPE C DEFAULT 'Html' LOWER CASE.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) T_PTXT.
PARAMETERS: P_TXT RADIOBUTTON GROUP G1.
SELECTION-SCREEN COMMENT 30(20) T_PEXT.
PARAMETERS: P_TEX(4) TYPE C DEFAULT 'Txt' LOWER CASE.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) T_PPATH.
PARAMETERS: P_PATH LIKE RLGRAP-FILENAME
OBLIGATORY DEFAULT 'C:\temp'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK B4.
INITIALIZATION
INITIALIZATION.
*--- parameter screen texts.
T_B1 = 'Author (Optional)'.
T_B2 = 'Objects to download'.
T_B3 = 'Additional downloads'.
T_B4 = 'Download parameters'.
T_AUTH = 'Author name'.
T_PMOD = 'Include programs modified by author'.
T_RTABLE = 'Tables'.
T_PTABLE = 'Table name'.
T_TNOTE = 'Please note: tables are stored under the username of'.
T_TNOTE1 = ' the last person who modified them.'.
T_RFUNC = 'Function modules'.
T_PFNAME = 'Function name'.
T_FGROUP = 'Function group'.
T_RPROG = 'Programs'.
T_RPNAME = 'Program name'.
T_SDEV = 'Development class'.
T_PTXT = 'Text document'.
T_PHTML = 'HTML document'.
T_PTEXT = 'Text elements'.
T_PINC = 'Include programs'.
T_RECU = 'Recursive search'.
T_PHEXT = 'File extension'.
T_PEXT = 'File extension'.
T_PPATH = 'File path'.
T_PMES = 'Message classes'.
T_PFUNC = 'Function modules'.
T_DOC = 'Function module documentation'.
T_RECF = 'Recursive search'.
T_PSCR = 'Screens'.
T_PDICT = 'Dictionary structures'.
T_$TMP = 'Include local objects'.
CONCATENATE 'Extracted by Direct download v' C_VERSION_NO
' 1998-2000.' INTO FOOTER_MESSAGE.
START-OF-SELECTION.
START-OF-SELECTION.
PERFORM CHECK_COMBO_BOXES.
PERFORM FILL_RANGES.
START_TIME = SY-UZEIT.
TRANSLATE P_HEX TO LOWER CASE.
TRANSLATE P_TEX TO LOWER CASE.
*--- Main program flow.
CASE 'X'.
*--- Select tables
WHEN R_TABLE.
PERFORM RETRIEVE_TABLES TABLES I_DICTIONARY
TABLE_NAMES
S_TABLE.
WHEN R_FUNC.
*--- Select function modules
PERFORM RETRIEVE_FUNCTIONS TABLES S_FNAME
S_FGROUP
I_PROGRAMMES
I_FUNCTIONS
USING 1.
LOOP AT I_FUNCTIONS.
PERFORM FUNC_INCLUDE_NAME USING I_FUNCTIONS-PNAME
I_FUNCTIONS-INCLUDE
TEMP_FUNC_NAME
0.
PERFORM FIND_INCLUDE_PROGRAMS USING TEMP_FUNC_NAME.
PERFORM FIND_CUSTOM_FUNCTIONS TABLES I_FUNCTIONS
USING TEMP_FUNC_NAME.
ENDLOOP.
SORT I_PROG_INCLUDES ASCENDING BY PROG.
DELETE ADJACENT DUPLICATES FROM I_PROG_INCLUDES COMPARING PROG.
perform retrieve_functions tables s_fname
s_fgroup
I_FUNCTIONS
I_FUNCTIONS_2
USING 0.
I_FUNCTIONS[] = I_FUNCTIONS_2[].
*--- Select programs
WHEN R_PROG.
MESS = 'Processing please wait...'.
PERFORM DISPLAY_STATUS USING MESS 0.
PERFORM RETRIEVE_PROGRAMS TABLES I_PROGRAMMES
S_PROG
S_DEV
S_AUTH.
ENDCASE.
END-OF-SELECTION
END-OF-SELECTION.
IF FORCED_EXIT = 0.
CASE 'X'.
WHEN R_TABLE.
IF NOT ( I_DICTIONARY[] IS INITIAL ).
PERFORM DOWNLOAD_DD_STRUCTURES TABLES I_DICTIONARY
USING P_PATH.
PERFORM FILL_TREE_NODE_TABLES TABLES I_DICTIONARY.
ENDIF.
WHEN R_FUNC.
IF NOT ( I_FUNCTIONS[] IS INITIAL ).
PERFORM DOWNLOAD_FUNCTIONS TABLES I_FUNCTIONS
USING P_PATH.
PERFORM FILL_TREE_NODE_FUNCTIONS TABLES I_FUNCTIONS.
ENDIF.
WHEN R_PROG.
IF NOT ( I_PROGRAMMES[] IS INITIAL ).
PERFORM DOWNLOAD_PROGRAMS TABLES I_PROGRAMMES
USING P_PATH.
PERFORM FILL_TREE_NODE_PROGRAMS TABLES I_PROGRAMMES.
ENDIF.
ENDCASE.
IF NOT ( I_NODE[] IS INITIAL ).
PERFORM DISPLAY_TREE TABLES I_NODE.
ELSE.
MESS = 'No items found matching selection criteria'.
PERFORM DISPLAY_STATUS USING MESS 2.
ENDIF.
ENDIF.
*--- Name parameters
SET PARAMETER ID 'RID' FIELD P_PROG.
SET PARAMETER ID 'DOB' FIELD P_TABLE.
SET PARAMETER ID 'DVC' FIELD P_DEV.
SET PARAMETER ID 'LIB' FIELD P_FNAME.
****************************SUBROUTINES*******************************
CHECK_COMBO_BOXES...
FORM CHECK_COMBO_BOXES.
IF P_AUTH IS INITIAL.
CASE 'X'.
WHEN R_TABLE.
IF P_TABLE IS INITIAL.
MESS = 'You must enter a table name or author'.
ENDIF.
WHEN R_FUNC.
IF ( P_FNAME IS INITIAL AND P_FGROUP IS INITIAL ).
CONCATENATE 'You must enter a function name,'
'function group or author'
INTO MESS SEPARATED BY SPACE.
ENDIF.
WHEN R_PROG.
IF P_PROG IS INITIAL.
CONCATENATE 'You must enter a program name'
'development class or author'
INTO MESS SEPARATED BY SPACE.
ENDIF.
ENDCASE.
ELSE.
IF R_FUNC = 'X'.
IF ( ( P_AUTH <> '' ) AND
( ( P_FNAME <> '' ) OR ( P_FGROUP <> '' ) ) ).
CONCATENATE 'You cannnot enter an author as well as'
'a func name or func group'
INTO MESS SEPARATED BY SPACE.
ENDIF.
ENDIF.
ENDIF.
IF NOT MESS IS INITIAL.
PERFORM DISPLAY_STATUS USING MESS 3.
FORCED_EXIT = 1.
STOP.
ENDIF.
ENDFORM. " CHECK_COMBO_BOXES
FILL_RANGES... for selection routines
FORM FILL_RANGES.
if not p_auth is initial.
s_auth-sign = 'I'.
s_auth-option = 'EQ'.
s_auth-low = p_auth.
append s_auth.
endif.
IF NOT P_TABLE IS INITIAL.
S_TABLE-SIGN = 'I'.
S_TABLE-OPTION = 'EQ'.
S_TABLE-LOW = P_TABLE.
APPEND S_TABLE.
endif.
IF NOT P_FNAME IS INITIAL.
S_FNAME-SIGN = 'I'.
S_FNAME-OPTION = 'EQ'.
S_FNAME-LOW = P_FNAME.
APPEND S_FNAME.
endif.
IF NOT P_FGROUP IS INITIAL.
S_FGROUP-SIGN = 'I'.
S_FGROUP-OPTION = 'EQ'.
S_FGROUP-LOW = P_FGROUP.
APPEND S_FGROUP.
endif.
IF NOT P_PROG IS INITIAL.
S_PROG-SIGN = 'I'.
S_PROG-OPTION = 'EQ'.
S_PROG-LOW = P_PROG.
APPEND S_PROG.
ENDIF.
IF NOT P_DEV IS INITIAL.
S_DEV-SIGN = 'I'.
S_DEV-OPTION = 'EQ'.
S_DEV-LOW = P_DEV.
APPEND S_DEV.
ENDIF.
IF P_$TMP IS INITIAL.
S_DEV-SIGN = 'E'.
S_DEV-OPTION = 'EQ'.
S_DEV-LOW = '$TMP'.
APPEND S_DEV.
ENDIF.
ENDFORM.
FIND_TABLES... Search for tables in dictionary
FORM RETRIEVE_TABLES TABLES I_DICTIONARY STRUCTURE I_DICTIONARY
TABLE_NAMES STRUCTURE TABLE_NAMES
RANGE_TABLE STRUCTURE S_TABLE.
SELECT TABNAME FROM DD02L
INTO TABLE_NAMES-TABNAME
WHERE TABNAME IN RANGE_TABLE
AND AS4USER IN S_AUTH.
SELECT SINGLE DDTEXT FROM DD02T
INTO TABLE_NAMES-TABTEXT
WHERE TABNAME = TABLE_NAMES-TABNAME
AND DDLANGUAGE = SY-LANGU.
APPEND TABLE_NAMES.
ENDSELECT.
IF NOT ( TABLE_NAMES[] IS INITIAL ).
PERFORM FIND_TABLE_DEFINITION TABLES I_DICTIONARY
TABLE_NAMES.
ENDIF.
ENDFORM.
find_table_definition... from sap database.
FORM FIND_TABLE_DEFINITION TABLES I_DICT STRUCTURE I_DICTIONARY
TABLENAMES STRUCTURE TABLE_NAMES.
DATA gotstate LIKE dcobjif-gotstate.
DATA dd02v_wa LIKE dd02v.
DATA dd09l_wa LIKE dd09l.
DATA: DEFINITION LIKE DD03P OCCURS 0 WITH HEADER LINE.
LOOP AT TABLENAMES.
CALL FUNCTION 'DDIF_TABL_GET'
EXPORTING
NAME = TABLENAMES-TABNAME
STATE = 'A'
LANGU = 'E'
IMPORTING
GOTSTATE = GOTSTATE
DD02V_WA = DD02V_WA
DD09L_WA = DD09L_WA
TABLES
DD03P_TAB = DEFINITION
EXCEPTIONS
ILLEGAL_INPUT = 1
OTHERS = 2.
IF SY-SUBRC = 0 AND GOTSTATE = 'A'.
LOOP AT DEFINITION.
MOVE-CORRESPONDING DEFINITION TO I_DICT.
MOVE TABLE_NAMES-TABTEXT TO I_DICT-TABTEXT.
APPEND I_DICT.
ENDLOOP.
ENDIF.
ENDLOOP.
ENDFORM.
RETRIEVE_FUNCTIONS... Retrieve function modules from SAP DB
FORM RETRIEVE_FUNCTIONS TABLES S_FNAME STRUCTURE S_FNAME
S_FGROUP STRUCTURE S_FGROUP
FUNC_NAMES STRUCTURE I_FUNCTIONS
FOUND_FUNC STRUCTURE I_FUNCTIONS
USING MAIN_SCAN.
RANGES: SEL_FNAME FOR TFDIR-FUNCNAME.
RANGES: SEL_FGROUP FOR ENLFDIR-AREA.
SEL_FNAME[] = S_FNAME[].
SEL_FGROUP[] = S_FGROUP[].
IF MAIN_SCAN = 1.
IF NOT P_AUTH IS INITIAL.
*--- select all function groups by author
SELECT AREA FROM TLIBV INTO SEL_FGROUP-LOW
WHERE UNAME = P_AUTH.
SEL_FGROUP-SIGN = 'I'.
SEL_FGROUP-OPTION = 'EQ'.
APPEND SEL_FGROUP.
ENDSELECT.
ENDIF.
*--- Select by function name and/or function group.
SELECT * FROM V_FDIR
WHERE FUNCNAME IN SEL_FNAME
AND AREA IN SEL_FGROUP
AND GENERATED = ''.
SELECT SINGLE FUNCNAME
PNAME
INCLUDE FROM TFDIR
INTO (FOUND_FUNC-FUNCNAME,
FOUND_FUNC-PNAME,
FOUND_FUNC-INCLUDE)
WHERE FUNCNAME = V_FDIR-FUNCNAME.
SELECT SINGLE STEXT FROM TFTIT
INTO FOUND_FUNC-STEXT
WHERE SPRAS = SY-LANGU
AND FUNCNAME = V_FDIR-FUNCNAME.
APPEND I_FUNCTIONS.
ENDSELECT.
ELSE.
LOOP AT FUNC_NAMES.
SELECT SINGLE FUNCNAME
PNAME
INCLUDE FROM TFDIR
INTO (FOUND_FUNC-FUNCNAME,
FOUND_FUNC-PNAME,
FOUND_FUNC-INCLUDE)
WHERE FUNCNAME = FUNC_NAMES-FUNCNAME.
SELECT SINGLE STEXT FROM TFTIT
INTO FOUND_FUNC-STEXT
WHERE SPRAS = SY-LANGU
AND FUNCNAME = FUNC_NAMES-FUNCNAME.
APPEND FOUND_FUNC.
ENDLOOP.
ENDIF.
ENDFORM.
RETRIEVE_PROGRAMS... find programs and sub objects from SAP DB
FORM RETRIEVE_PROGRAMS TABLES I_PROG STRUCTURE I_PROGRAMMES
SEL_PROG STRUCTURE S_PROG
SEL_DEV STRUCTURE S_DEV
SEL_AUTH STRUCTURE S_AUTH.
DATA: COUNTER TYPE I VALUE 1.
DATA: WA_INCLUDES TYPE T_INCLUDES.
*----- Select by name, development class and author
IF P_MOD IS INITIAL.
SELECT PROGNAME SUBC FROM REPOSRC
INTO (I_PROG-PROG,
I_PROG-SUBC)
WHERE PROGNAME IN SEL_PROG
AND DEVCLASS IN SEL_DEV
AND CNAM IN SEL_AUTH.
AND ( SUBC = '1'
OR SUBC = 'M' ).
APPEND I_PROG.
ENDSELECT.
ELSE.
SELECT PROGNAME SUBC FROM REPOSRC
INTO (I_PROG-PROG,
I_PROG-SUBC)
WHERE PROGNAME IN SEL_PROG
AND DEVCLASS IN SEL_DEV
AND SUBC = '1'
AND ( CNAM IN SEL_AUTH
OR UNAM IN SEL_AUTH ).
APPEND I_PROG.
ENDSELECT.
ENDIF.
*----- Find extra items
LOOP AT I_PROG.
PERFORM FIND_PROGRAM_NAME USING I_PROG-PROG
CHANGING I_PROG-TEXT.
IF P_TEXT = 'X'.
PERFORM FIND_PROGRAM_TEXTS TABLES I_PROG.
ENDIF.
IF P_MES = 'X'.
PERFORM FIND_MESSAGES TABLES I_PROG USING I_PROG-PROG.
ENDIF.
IF P_SCR = 'X'.
PERFORM FIND_SCREEN_FLOW TABLES I_PROG USING I_PROG-PROG.
ENDIF.
if p_dict = 'X'.
perform find_custom_dict_structures tables i_prog
table_names
using i_prog-prog.
endif.
if p_func = 'X'.
PERFORM FIND_CUSTOM_FUNCTIONS TABLES FUNCTION_NAMES
USING I_PROG-PROG.
endif.
IF P_INC = 'X'.
PERFORM FIND_INCLUDE_PROGRAMS USING I_PROG-PROG.
PERFORM SORT_INCLUDES TABLES I_PROG.
*--- find all relevant data for the includes table.
IF NOT ( I_INCLUDES[] IS INITIAL ).
LOOP AT I_PROG-INCLUDES INTO WA_INCLUDES.
IF P_DICT = 'X'.
PERFORM FIND_CUSTOM_DICT_STRUCTURES TABLES I_PROG
TABLE_NAMES
USING WA_INCLUDES-PROG.
ENDIF.
IF P_FUNC = 'X'.
PERFORM FIND_CUSTOM_FUNCTIONS TABLES FUNCTION_NAMES
USING WA_INCLUDES-PROG.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
PERFORM SORT_DICT_STRUCTURES TABLES I_PROG TABLE_NAMES.
PERFORM SORT_FUNCTIONS TABLES I_PROG FUNCTION_NAMES.
MODIFY I_PROG INDEX COUNTER.
COUNTER = COUNTER + 1.
ENDLOOP.
ENDFORM.
FIND_PROGRAM_NAME... find programme name
FORM FIND_PROGRAM_NAME USING PROGramme_name
CHANGING programme_TEXT.
READ TEXTPOOL PROGRAMME_NAME INTO I_PROGRAMME_TEXTS LANGUAGE SY-LANGU.
READ TABLE I_PROGRAMME_TEXTS WITH KEY 'R'.
IF SY-SUBRC EQ 0.
PROGRAMME_TEXT = I_PROGRAMME_TEXTS-ENTRY.
DELETE I_PROGRAMME_TEXTS INDEX SY-TABIX.
ENDIF.
ENDFORM. " FIND_PROGRAMME_NAME
FIND_PROGRAM_TEXTS... Messages and text elements
FORM FIND_PROGRAM_TEXTS TABLES I_PROG STRUCTURE I_PROGRAMMES.
DATA: TEMP_SELECTION TYPE T_TEXTTAB.
*--- selection texts.
LOOP AT I_PROGRAMME_TEXTS WHERE ID = 'S'.
APPEND I_PROGRAMME_TEXTS TO I_PROG-SELECTION_TEXTS.
DELETE I_PROGRAMME_TEXTS INDEX SY-TABIX.
ENDLOOP.
*--- Text elements.
LOOP AT I_PROGRAMME_TEXTS WHERE ID = 'I'.
APPEND I_PROGRAMME_TEXTS TO I_PROG-TEXT_ELEMENTS.
ENDLOOP.
ENDFORM.
FIND_MESSAGES... finds all program messages including dynamically
called messages - providing they have been
declared on one complete line.
FORM FIND_MESSAGES TABLES I_PROG STRUCTURE I_PROGRAMMES
USING PROGNAME.
*--- lines for main program
DATA: I_REPORT_LINES LIKE CONTENT OCCURS 0 WITH HEADER LINE.
*-- Separate working area for internal table
DATA: WA_MESSAGES TYPE T_MESSAGES.
DATA: msgid LIKE trdire-msgid.
DATA: HEAD LIKE I_REPORT_LINES-LINE.
DATA: TAIL LIKE I_REPORT_LINES-LINE.
DATA: headlength TYPE i VALUE 0.
DATA: TAILLENGTH TYPE I VALUE 0.
*--- Read the program contents into memory
READ REPORT PROGNAME INTO I_REPORT_LINES.
*--- Read the report content looking for message calls.
LOOP AT I_REPORT_LINES.
TRANSLATE I_REPORT_LINES TO UPPER CASE.
IF NOT ( I_REPORT_LINES IS INITIAL ) AND I_REPORT_LINES(1) <> '*'.
Find the main message definition.
IF I_REPORT_LINES CS 'MESSAGE-ID'.
SHIFT I_REPORT_LINES LEFT DELETING LEADING SPACE.
SPLIT I_REPORT_LINES AT 'MESSAGE-ID' INTO HEAD TAIL.
SPLIT TAIL AT '.' INTO HEAD TAIL.
SHIFT HEAD LEFT DELETING LEADING SPACE.
MSGID = HEAD.
ELSE.
There are three different ways of calling a message to display
this routine looks for all three of them and strips the message
class and number out of the code
IF I_REPORT_LINES CS 'MESSAGE'.
SHIFT I_REPORT_LINES-LINE UP TO 'MESSAGE'.
IF I_REPORT_LINES-LINE CS '('.
SPLIT I_REPORT_LINES-LINE AT '(' INTO HEAD TAIL.
HEADLENGTH = STRLEN( HEAD ).
HEADLENGTH = HEADLENGTH - 3.
WA_MESSAGES-MSGNR = HEAD+HEADLENGTH(3).
SPLIT TAIL AT ')' INTO HEAD TAIL.
WA_MESSAGES-MSGID = HEAD.
ELSEIF I_REPORT_LINES-LINE CS 'ID'.
SHIFT I_REPORT_LINES UP TO 'ID'.
SPLIT I_REPORT_LINES AT SPACE INTO HEAD TAIL.
SHIFT TAIL LEFT DELETING LEADING SPACE.
HEAD = TAIL.
SPLIT HEAD AT SPACE INTO HEAD TAIL.
WA_MESSAGES-MSGID = HEAD.
SPLIT TAIL AT 'NUMBER' INTO HEAD TAIL.
SHIFT TAIL LEFT DELETING LEADING SPACE.
TAILLENGTH = STRLEN( TAIL ).
IF TAILLENGTH = 3.
WA_MESSAGES-MSGNR = TAIL+0(3).
ELSE.
CONTINUE.
ENDIF.
ELSE.
*--- use message class from main program
SPLIT I_REPORT_LINES-LINE AT SPACE INTO HEAD TAIL.
SHIFT TAIL LEFT DELETING LEADING SPACE.
WA_MESSAGES-MSGID = MSGID.
WA_MESSAGES-MSGNR = TAIL+1(3).
ENDIF.
APPEND WA_MESSAGES TO I_PROG-MESSAGES.
CLEAR WA_MESSAGES.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
*--- Sort the messages and delete multiple occurrences from the
internal table.
SORT I_PROG-MESSAGES ASCENDING BY MSGID MSGNR.
DELETE I_PROG-MESSAGES WHERE MSGID(1) <> 'Y'
AND MSGID(1) <> 'Z'.
DELETE ADJACENT DUPLICATES FROM I_PROG-MESSAGES.
DELETE I_PROG-MESSAGES WHERE MSGID IS INITIAL.
DELETE I_PROG-MESSAGES WHERE MSGNR IS INITIAL.
DELETE I_PROG-MESSAGES WHERE MSGNR CN '0123456789'.
LOOP AT I_PROG-MESSAGES INTO WA_MESSAGES.
SELECT SINGLE TEXT FROM T100 INTO WA_MESSAGES-TEXT
WHERE SPRSL = SY-LANGU
AND ARBGB = WA_MESSAGES-MSGID
AND MSGNR = WA_MESSAGES-MSGNR.
MODIFY I_PROG-MESSAGES FROM WA_MESSAGES INDEX SY-TABIX.
ENDLOOP.
ENDFORM.
FIND_SCREEN_FLOW...
FORM FIND_SCREEN_FLOW TABLES I_PROG STRUCTURE I_PROGRAMMES
USING PROGNAME.
DATA: FLOW TYPE T_SCREEN_FLOW OCCURS 0 WITH HEADER LINE.
call function 'DYNPRO_PROCESSINGLOGIC'
exporting
REP_NAME = PROGNAME
tables
SCR_LOGIC = FLOW.
SORT FLOW ASCENDING BY SCREEN.
DELETE ADJACENT DUPLICATES FROM FLOW COMPARING SCREEN.
IF I_PROG-SUBC <> 'M'.
DELETE FLOW WHERE SCREEN = '1000'.
ENDIF.
LOOP AT FLOW.
APPEND FLOW TO I_PROG-SCREEN_FLOW.
ENDLOOP.
ENDFORM. " FIND_SCREEN_FLOW
FIND_INCLUDE_PROGRAMS... Search each program for INCLUDE programs
FORM FIND_INCLUDE_PROGRAMS USING VALUE(PROGRAM).
DATA: FIP_PROG(255),
TAIL(255).
*--- Lines for include
DATA: I_INC_LINES LIKE CONTENT OCCURS 0 WITH HEADER LINE.
*----- Read ABAP
READ REPORT PROGRAM INTO I_INC_LINES.
*----- Examine each line of ABAP
LOOP AT I_INC_LINES.
*--- find include programs.
IF I_INC_LINES(1) = '*' OR I_INC_LINES IS INITIAL.
CONTINUE.
ENDIF.
TRANSLATE I_INC_LINES-LINE TO UPPER CASE.
SHIFT I_INC_LINES-LINE UP TO 'INCLUDE'.
IF ( I_INC_LINES-LINE(9) EQ 'INCLUDE Z' ) OR
( I_INC_LINES-LINE(9) EQ 'INCLUDE Y' )
AND I_INC_LINES-LINE+8(9) NE SPACE
AND SY-TABIX <> 1.
FIP_PROG = I_INC_LINES-LINE+8(64).
SPLIT FIP_PROG AT '.' INTO FIP_PROG TAIL.
Append program name to list of include programs
SELECT SINGLE * FROM TRDIR WHERE NAME EQ FIP_PROG.
CHECK SY-SUBRC EQ 0.
I_PROG_INCLUDES-PROG = FIP_PROG.
APPEND I_PROG_INCLUDES.
*--- Recursively look for other includes.
IF P_RECI = 'X'.
PERFORM FIND_INCLUDE_PROGRAMS USING FIP_PROG.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. " FIND_INCLUDE_PROGRAMS
SORT_INCLUDES.. Remove any duplicates from include table.
FORM SORT_INCLUDES TABLES I_PROG STRUCTURE I_PROGRAMMES.
SORT I_PROG_INCLUDES.
DELETE ADJACENT DUPLICATES FROM I_PROG_INCLUDES COMPARING PROG.
LOOP AT I_PROG_INCLUDES.
PERFORM FIND_PROGRAM_NAME USING I_PROG_INCLUDES-PROG
CHANGING I_PROG_INCLUDES-TEXT.
MODIFY I_PROG_INCLUDES.
MOVE-CORRESPONDING I_PROG_INCLUDES TO I_INCLUDES.
APPEND I_INCLUDES.
ENDLOOP.
APPEND LINES OF I_PROG_INCLUDES TO I_PROG-INCLUDES.
CLEAR I_PROG_INCLUDES. REFRESH I_PROG_INCLUDES.
ENDFORM.
FIND_CUSTOM_DICT_STRUCTURES... Look for any dictionary objects
not created by SAP
FORM FIND_CUSTOM_DICT_STRUCTURES TABLES I_PROG STRUCTURE I_PROGRAMMES
TABLE_NAMES
STRUCTURE TABLE_NAMES
USING VALUE(PROGRAM).
DATA I_LINES LIKE CONTENT OCCURS 0 WITH HEADER LINE.
DATA: HEAD(76).
DATA: TAIL(76).
DATA: LINETYPE(9).
DATA: END_OF_LINE TYPE I VALUE 1.
*--- read abap
READ REPORT PROGRAM INTO I_LINES.
LOOP AT I_LINES.
*--- find custom tables.
IF I_LINES-LINE(1) = '*' OR I_LINES IS INITIAL.
CONTINUE.
ENDIF.
TRANSLATE I_LINES-LINE TO UPPER CASE.
Determine the linetype.
IF END_OF_LINE = 1.
SHIFT I_LINES-LINE UP TO C_TABLES.
IF SY-SUBRC = 0.
LINETYPE = C_TABLES.
ELSE.
SHIFT I_LINES-LINE UP TO C_LIKE.
IF SY-SUBRC = 0.
LINETYPE = C_TYPE.
ELSE.
SHIFT I_LINES-LINE UP TO C_TYPE.
-
TS - Cannot install specific product from Autodesk suite
Hi,
the scenario is the following:
SCCM 2012 R2. All in one server. Windows 2012 R2.
Windows 7 Pro x64 (clients)
After sccm client installation step, the task sequence successfully install another autodesk products (autocad, inventor, revit) but fails to install 3dsmax. The TS fails when 3dsmax is at beginning or at the end (list of autodesk products) or is the only
package to install.
The smsts.log is the following: (only 3ds max)
Setting URL = http://OPERACIONESPRU.mydomain.com/SMS_DP_SMSPKG$/UCE00017. InstallSoftware 21/12/2013 11:52:38 3492 (0x0DA4)
Address=http://OPERACIONESPRU.mydomain.com, Scheme=http, Object=/SMS_DP_SMSPKG$/UCE00017, Port=80. InstallSoftware 21/12/2013 11:52:38 3492 (0x0DA4)
Setting Authenticator. InstallSoftware 21/12/2013 11:52:38 3492 (0x0DA4)
Set authenticator in transport InstallSoftware 21/12/2013 11:52:38 3492 (0x0DA4)
WinHttp credentials set InstallSoftware 21/12/2013 11:52:38 3492 (0x0DA4)
CLibSMSMessageWinHttpTransport::Send: URL: OPERACIONESPRU.mydomain.com:80 PROPFIND /SMS_DP_SMSPKG$/UCE00017 InstallSoftware 21/12/2013 11:52:38 3492 (0x0DA4)
401 - Unsuccessful with anonymous access. Retrying with context credentials. InstallSoftware 21/12/2013 11:52:38 3492 (0x0DA4)
Using thread token for request InstallSoftware 21/12/2013 11:52:38 3492 (0x0DA4)
Request was successful. InstallSoftware 21/12/2013 11:55:51 3492 (0x0DA4)
vbIsSuccessful != VARIANT_FALSE, HRESULT=80004005 (e:\nts_sccm_release\sms\framework\tscore\downloadcontent.cpp,324) InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
loadXML() failed. InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
ParseDAVResponse() failed. 80004005 InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
ParseDAVResponse (setDirs, setFiles, bUseSSL), HRESULT=80004005 (e:\nts_sccm_release\sms\framework\tscore\downloadcontent.cpp,521) InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
oDavRequest.GetDirectoryListing (setDirs, setFiles), HRESULT=80004005 (e:\nts_sccm_release\sms\framework\tscore\resolvesource.cpp,2516) InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
Download() failed. 80004005. InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
DownloadContentAndVerifyHash() failed. 80070002. InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
DownloadContentAndVerifyHash ( pszPackageID, L"SMSPackage", saHttpContentSources, saSMBContentSources, saMulticastContentSources, sDestination, dwFlags, L"", 0, dwPackageFlags, mapNetworkAccess ), HRESULT=80070002 (e:\nts_sccm_release\sms\framework\tscore\resolvesource.cpp,3052)
InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
DownloadContentLocally (pszSource, sSourceDirectory, dwFlags, hUserToken, mapNetworkAccess), HRESULT=80070002 (e:\nts_sccm_release\sms\framework\tscore\resolvesource.cpp,3273) InstallSoftware 21/12/2013 11:56:24
3492 (0x0DA4)
TS::Utility::ResolveSource(pszPkgID, sContentLoc), HRESULT=80070002 (e:\nts_sccm_release\sms\client\osdeployment\installsoftware\installsoftware.cpp,144) InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
Failed to resolve the source for SMS PKGID=UCE00017, hr=0x80070002 InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
GetContentLocation(pszPkgID, m_bPkgContainSrcFiles, sContentLocation), HRESULT=80070002 (e:\nts_sccm_release\sms\client\osdeployment\installsoftware\installsoftware.cpp,683) InstallSoftware 21/12/2013 11:56:24
3492 (0x0DA4)
ReleaseSource() for C:\_SMSTaskSequence\Packages\UCE00017. InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
The user tries to release a source directory C:\_SMSTaskSequence\Packages\UCE00017 that is either already released or we have not connected to it. InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
pInstall->Install(sPackageID, sProgramName), HRESULT=80070002 (e:\nts_sccm_release\sms\client\osdeployment\installsoftware\main.cpp,361) InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
Install Software failed, hr=0x80070002 InstallSoftware 21/12/2013 11:56:24 3492 (0x0DA4)
Process completed with exit code 2147942402 TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
!--------------------------------------------------------------------------------------------! TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Failed to run the action: Install 3DSMax.
Unknown error (Error: 80070002; Source: Unknown) TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
MP server http://sccm-vm.mydomain.com. Ports 80,443. CRL=false. TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Setting authenticator TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Set authenticator in transport TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Sending StatusMessage TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Setting message signatures. TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Setting the authenticator. TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
CLibSMSMessageWinHttpTransport::Send: URL: sccm-vm.mydomain.com:80 CCM_POST /ccm_system/request TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Request was successful. TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Set a global environment variable _SMSTSLastActionRetCode=-2147024894 TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Set a global environment variable _SMSTSLastActionSucceeded=false TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Clear local default environment TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Let the parent group (Setup Operating System) decides whether to continue execution TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
The execution of the group (Setup Operating System) has failed and the execution has been aborted. An action failed.
Unknown error (Error: 80004004; Source: Unknown) TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Failed to run the last action: Install 3DSMax. Execution of task sequence failed.
Unknown error (Error: 80070002; Source: Unknown) TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
MP server http://sccm-vm.mydomain.com. Ports 80,443. CRL=false. TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Setting authenticator TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Set authenticator in transport TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Sending StatusMessage TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Setting message signatures. TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Setting the authenticator. TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
CLibSMSMessageWinHttpTransport::Send: URL: sccm-vm.mydomain.com:80 CCM_POST /ccm_system/request TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Request was successful. TSManager 21/12/2013 11:56:24 3520 (0x0DC0)
Launching command shell. OSDSetupHook 21/12/2013 11:59:56 3472 (0x0D90)
Windows station: WinSta0 OSDSetupHook 21/12/2013 11:59:56 3472 (0x0D90)
Desktop: Default OSDSetupHook 21/12/2013 11:59:56 3472 (0x0D90)
executing command: C:\Windows\system32\cmd.exe /k OSDSetupHook 21/12/2013 11:59:56 3472 (0x0D90)
executed command: C:\Windows\system32\cmd.exe /k OSDSetupHook 21/12/2013 11:59:57 3472 (0x0D90)
Execution::enExecutionFail != m_eExecutionResult, HRESULT=80004005 (e:\nts_sccm_release\sms\client\tasksequence\tsmanager\tsmanager.cpp,923) TSManager 21/12/2013 12:02:39 3520 (0x0DC0)
Task Sequence Engine failed! Code: enExecutionFail TSManager 21/12/2013 12:02:39 3520 (0x0DC0)
**************************************************************************** TSManager 21/12/2013 12:02:39 3520 (0x0DC0)
Task sequence execution failed with error code 80004005 TSManager 21/12/2013 12:02:39 3520 (0x0DC0)
Cleaning Up. TSManager 21/12/2013 12:02:39 3520 (0x0DC0)
Removing Authenticator TSManager 21/12/2013 12:02:39 3520 (0x0DC0)
Cleaning up task sequence folder TSManager 21/12/2013 12:02:39 3520 (0x0DC0)
Unable to delete file C:\_SMSTaskSequence\TSEnv.dat (0x80070005). Continuing. TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
hr, HRESULT=80070091 (e:\nts_sccm_release\sms\framework\core\ccmcore\ccmfile.cpp,1218) TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Failed to delete directory 'C:\_SMSTaskSequence' TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
(dwRet = ::SetNamedSecurityInfoW ((WCHAR*) pszObjectName, objectType, OWNER_SECURITY_INFORMATION, pOwnerSID, NULL, NULL, NULL)) == ERROR_SUCCESS, HRESULT=80070005 (e:\nts_sccm_release\sms\framework\tscore\utils.cpp,6675) TSManager
21/12/2013 12:02:45 3520 (0x0DC0)
SetNamedSecurityInfo() failed. TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
SetObjectOwner() failed. 0x80070005. TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
SetObjectOwner (szFName, SE_FILE_OBJECT, c_szAdministrators), HRESULT=80070005 (e:\nts_sccm_release\sms\framework\tscore\utils.cpp,6772) TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
RemoveFile() failed for C:\_SMSTaskSequence\TSEnv.dat. 0x80070005. TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
RemoveDirectoryW failed (0x80070091) for C:\_SMSTaskSequence TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Deleting volume ID file C:\_SMSTSVolumeID.7159644d-f741-45d5-ab29-0ad8aa4771ca ... TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
DeleteFileW(sVolumeIDFile.c_str()), HRESULT=80070002 (e:\nts_sccm_release\sms\framework\tscore\resolvesource.cpp,508) TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Successfully unregistered Task Sequencing Environment COM Interface. TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Command line for extension .exe is "%1" %* TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Set command line: "C:\Windows\CCM\TsProgressUI.exe" /Unregister TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Executing command line: "C:\Windows\CCM\TsProgressUI.exe" /Unregister TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
==========[ TsProgressUI started in process 648 ]========== TsProgressUI 21/12/2013 12:02:45 3364 (0x0D24)
Command line: "C:\Windows\CCM\TsProgressUI.exe" /Unregister TsProgressUI 21/12/2013 12:02:45 3364 (0x0D24)
Unregistering COM classes TsProgressUI 21/12/2013 12:02:45 3364 (0x0D24)
Unregistering class objects TsProgressUI 21/12/2013 12:02:45 3364 (0x0D24)
Shutdown complete. TsProgressUI 21/12/2013 12:02:45 3364 (0x0D24)
Process completed with exit code 0 TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Successfully unregistered TS Progress UI. TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Setting program history for UCE00023:* TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Opening the task sequence key HKLM\Software\Microsoft\SMS\Task Sequence TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Deleting the package ID from registry key HKLM\Software\Microsoft\SMS\Task Sequence\Package TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
kTaskSequence.DeleteValue(L"Package"), HRESULT=80070002 (e:\nts_sccm_release\sms\framework\tscore\utils.cpp,4091) TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Failed to delete registry value HKLM\Software\Microsoft\SMS\Task Sequence\Package. Error code 0x80070002 TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
Start to cleanup TS policy TSManager 21/12/2013 12:02:45 3520 (0x0DC0)
TS deleting 'CCM_SoftwareUpdatesClientConfig.PolicyID="{1e799fd8-6c7b-4cbe-ab0f-e0f3b44436db}",PolicyInstanceID="{3214F161-1247-43E0-B3C2-9C6F6C5A0B6E}",PolicyRuleID="{581ad6e9-1785-4473-8d94-d005862f2a54}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_ClientActions.PolicyID="{1e799fd8-6c7b-4cbe-ab0f-e0f3b44436db}",PolicyInstanceID="{36166CAE-A0D9-4264-8B9A-BC300D85934C}",PolicyRuleID="{581ad6e9-1785-4473-8d94-d005862f2a54}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_ClientActions.PolicyID="{7328cfee-86d5-4a3e-99dc-e3b858312a21}",PolicyInstanceID="{A37094E5-41A9-4246-8066-F8E7B91F556D}",PolicyRuleID="{c212d132-7f70-49bd-81d4-4823e7f1603b}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_SoftwareDistributionClientConfig.PolicyID="{1c8225e0-d091-4b56-8880-ea099b46f4b7}",PolicyInstanceID="{32F4E68C-6F6B-4855-A633-D5E63CBC8D0D}",PolicyRuleID="{d3a0b8d2-65e6-4ebf-a90a-a6f348cd4f7a}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_NetworkAccessAccount.PolicyID="{885a3932-5ac2-466d-863f-cf56ad397e8f}",PolicyInstanceID="{E9AF1F7B-AF59-4CCE-8984-AF869911FEA7}",PolicyRuleID="{b6d34c07-1646-4c17-8eda-8eb5f5bab008}",PolicySource="CcmTaskSequence",PolicyVersion="2.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_RebootSettings.PolicyID="{2a294912-b080-40b1-84df-93f373274bcd}",PolicyInstanceID="{DB22A623-8943-4098-B579-9E00A56A4584}",PolicyRuleID="{b732d51d-efa9-4269-b69d-e7e5d457722b}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_NetworkAccessAccount.PolicyID="{885a3932-5ac2-466d-863f-cf56ad397e8f}",PolicyInstanceID="{BC87265A-CBAB-4D9A-9FB8-8329CAAA3F32}",PolicyRuleID="{b6d34c07-1646-4c17-8eda-8eb5f5bab008}",PolicySource="CcmTaskSequence",PolicyVersion="2.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_Scheduler_ScheduledMessage.PolicyID="{1e799fd8-6c7b-4cbe-ab0f-e0f3b44436db}",PolicyInstanceID="{9DF408B2-F873-4A6B-8161-6D9DEE96C124}",PolicyRuleID="{581ad6e9-1785-4473-8d94-d005862f2a54}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_SystemHealthClientConfig.PolicyID="{62aca85a-ce3a-4305-b7eb-1b551b9e903e}",PolicyInstanceID="{1D7BCD50-A1C7-4EC8-9AEF-7ACB363C41AE}",PolicyRuleID="{e5a7d79c-825c-4a6c-87e0-8237d9defbd7}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_Scheduler_ScheduledMessage.PolicyID="{7328cfee-86d5-4a3e-99dc-e3b858312a21}",PolicyInstanceID="{E2C36DBA-77CB-4E9B-8490-190E7B0EC9F2}",PolicyRuleID="{c212d132-7f70-49bd-81d4-4823e7f1603b}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_Scheduler_ScheduledMessage.PolicyID="{1e799fd8-6c7b-4cbe-ab0f-e0f3b44436db}",PolicyInstanceID="{CB136001-7A88-47B0-8E69-1D4A05E17D21}",PolicyRuleID="{581ad6e9-1785-4473-8d94-d005862f2a54}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_ApplicationManagementClientConfig.PolicyID="{7328cfee-86d5-4a3e-99dc-e3b858312a21}",PolicyInstanceID="{B853E873-A432-4BE1-9D77-5DFFD2057298}",PolicyRuleID="{c212d132-7f70-49bd-81d4-4823e7f1603b}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS deleting 'CCM_SoftwareDistribution.PolicyID="DEP-UCE2000B-UCE00010-7F92F396",PolicyInstanceID="{BA8A21A3-63F9-4D4F-8211-F33D885B8594}",PolicyRuleID="{fad604ed-d8d3-4c6d-a08a-d51815d41a9c}",PolicySource="CcmTaskSequence",PolicyVersion="1.00"'.
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS Deleted 13 instances TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
TS Policy cleanup done TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
End TS policy cleanup TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Get Install Directory for SMS Client TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Start to evaluate TS policy with lock TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Locked policy transaction lock successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Updating settings in \\.\root\ccm\policy\machine\actualconfig TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
RequestedConfig policy instance(s) : 425 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Locked \\.\ROOT\ccm\policy\machine\RequestedConfig for source SMS:Client:Default:{8864FB91-94EE-4F16-A144-0D82A232049D} successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Namespace: \\.\ROOT\ccm\policy\machine\RequestedConfig, Query: SELECT PolicyID FROM CCM_Policy_Policy5 WHERE (PolicySource = "SMS:Client:Default:{8864FB91-94EE-4F16-A144-0D82A232049D}") AND (PolicyState = "Active") AND (PolicyType = "Machine")
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
There is no ccm_policy_policy instance, skipping addition to realinst map TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Unlocked \\.\ROOT\ccm\policy\machine\RequestedConfig for source SMS:Client:Default:{8864FB91-94EE-4F16-A144-0D82A232049D} successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
RequestedConfig policy instance(s) : 0 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Locked \\.\ROOT\ccm\policy\machine\RequestedConfig for source SMS:UCE successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Namespace: \\.\ROOT\ccm\policy\machine\RequestedConfig, Query: SELECT PolicyID FROM CCM_Policy_Policy5 WHERE (PolicySource = "SMS:UCE") AND (PolicyState = "Active") AND (PolicyType = "Machine") TSManager
21/12/2013 12:02:46 3520 (0x0DC0)
There is no ccm_policy_policy instance, skipping addition to realinst map TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Unlocked \\.\ROOT\ccm\policy\machine\RequestedConfig for source SMS:UCE successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
RequestedConfig policy instance(s) : 0 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Locked \\.\ROOT\ccm\policy\machine\RequestedConfig for source CcmPortal successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Namespace: \\.\ROOT\ccm\policy\machine\RequestedConfig, Query: SELECT PolicyID FROM CCM_Policy_Policy5 WHERE (PolicySource = "CcmPortal") AND (PolicyState = "Active") AND (PolicyType = "Machine") TSManager
21/12/2013 12:02:46 3520 (0x0DC0)
There is no ccm_policy_policy instance, skipping addition to realinst map TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Unlocked \\.\ROOT\ccm\policy\machine\RequestedConfig for source CcmPortal successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
RequestedConfig policy instance(s) : 0 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Locked \\.\ROOT\ccm\policy\machine\RequestedConfig for source Local successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
RequestedConfig policy instance(s) : 9 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Unlocked \\.\ROOT\ccm\policy\machine\RequestedConfig for source Local successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
RequestedConfig policy instance(s) : 0 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Locked \\.\ROOT\ccm\policy\machine\RequestedConfig for source CcmTaskSequence successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Namespace: \\.\ROOT\ccm\policy\machine\RequestedConfig, Query: SELECT PolicyID FROM CCM_Policy_Policy5 WHERE (PolicySource = "CcmTaskSequence") AND (PolicyState = "Active") AND (PolicyType = "Machine") TSManager
21/12/2013 12:02:46 3520 (0x0DC0)
There is no ccm_policy_policy instance, skipping addition to realinst map TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Unlocked \\.\ROOT\ccm\policy\machine\RequestedConfig for source CcmTaskSequence successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Total RequestedConfig policy instance(s) : 434 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Locked ActualConfig successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[1] Deleted setting 'CCM_ClientActions.ActionID="{00000000-0000-0000-0000-000000000123}"'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[2] Deleted setting 'CCM_ClientActions.ActionID="{00000000-0000-0000-0000-000000000108}"'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[3] Deleted setting 'CCM_Scheduler_ScheduledMessage.ScheduledMessageID="{00000000-0000-0000-0000-000000000114}"'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[4] Deleted setting 'CCM_Scheduler_ScheduledMessage.ScheduledMessageID="{00000000-0000-0000-0000-000000000108}"'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[5] Deleted setting 'CCM_Scheduler_ScheduledMessage.ScheduledMessageID="{00000000-0000-0000-0000-000000000121}"'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[6] Deleted setting 'CCM_SoftwareDistribution.ADV_AdvertisementID="UCE2000B",PKG_PackageID="UCE00010",PRG_ProgramID="Prg_AutoCAD2014"'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[7] Deleted setting 'CCM_ApplicationManagementClientConfig.SiteSettingsKey=1'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[8] Deleted setting 'CCM_NetworkAccessAccount.SiteSettingsKey=1'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[9] Deleted setting 'CCM_SoftwareDistributionClientConfig.SiteSettingsKey=1'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[10] Deleted setting 'CCM_SoftwareUpdatesClientConfig.SiteSettingsKey=1'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
[11] Deleted setting 'CCM_SystemHealthClientConfig.SiteSettingsKey=1'. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
New/Changed ActualConfig policy instance(s) : 0 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Unlocked ActualConfig successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Unlocked policy transaction lock successfully TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Raising event:
instance of CCM_PolicyAgent_SettingsEvaluationComplete
ClientID = "GUID:24728B59-F639-49BA-A511-135E6DCEB11B";
DateTime = "20131221170246.828000+000";
PolicyNamespace = "\\\\.\\root\\ccm\\policy\\machine\\actualconfig";
ProcessID = 900;
ThreadID = 3520;
TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Successfully submitted event to the Status Agent. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
End TS policy evaluation TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Policy evaluation initiated TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
g_TSManager.Run(), HRESULT=80004005 (e:\nts_sccm_release\sms\client\tasksequence\tsmanager\tsmanager.cpp,766) TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
::RegQueryValueExW(hSubKey, szReg, NULL, NULL, NULL, &dwSize), HRESULT=80070002 (e:\nts_sccm_release\sms\framework\tscore\utils.cpp,811) TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
RegQueryValueExW is unsuccessful for Software\Microsoft\SMS\Task Sequence, SMSTSEndProgram TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
GetTsRegValue() is unsuccessful. 0x80070002. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
End program: TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Error Task Sequence Manager failed to execute task sequence. Code 0x80004005 TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Sending error status message TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
MP server http://sccm-vm.mydomain.com. Ports 80,443. CRL=false. TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Setting authenticator TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Set authenticator in transport TSManager 21/12/2013 12:02:46 3520 (0x0DC0)
Sending StatusMessage TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
Setting message signatures. TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
Setting the authenticator. TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
CLibSMSMessageWinHttpTransport::Send: URL: sccm-vm.mydomain.com:80 CCM_POST /ccm_system/request TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
Request was successful. TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
Finalize logging request ignored from process 900 TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
Waiting for CcmExec service to be fully operational TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
CcmExec service is up and fully operational TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
Access handle will be read from _SMSTSActiveRequestHandle TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
Access handle: {E4E20871-7C19-4022-B7F5-6041F7440108} TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
Attempting to release request using {E4E20871-7C19-4022-B7F5-6041F7440108} TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
CoCreateInstance succeeded TSManager 21/12/2013 12:02:47 3520 (0x0DC0)
pISoftwareExecutionRequestMgr->ReleaseRequest(ActiveRequestGUID), HRESULT=80004005 (e:\nts_sccm_release\sms\client\tasksequence\tsmanager\tsmanagerutils.cpp,136) TSManager 21/12/2013 12:02:48 3520 (0x0DC0)
ReleaseRequest failed with error code 0x80004005 TSManager 21/12/2013 12:02:48 3520 (0x0DC0)
Task Sequence Manager could not release active TS request. code 80004005 TSManager 21/12/2013 12:02:48 3520 (0x0DC0)
Process completed with exit code 2147500037 TSMBootstrap 21/12/2013 12:02:49 1136 (0x0470)
Exiting with return code 0x80004005 TSMBootstrap 21/12/2013 12:02:49 1136 (0x0470)
Process completed with exit code 2147500037 OSDSetupHook 21/12/2013 12:02:49 3444 (0x0D74)
Task sequence completed 0x80004005 OSDSetupHook 21/12/2013 12:02:49 3444 (0x0D74)
Waiting for command shell to complete. OSDSetupHook 21/12/2013 12:02:49 3472 (0x0D90)
Terminating system message loop. OSDSetupHook 21/12/2013 12:02:49 3472 (0x0D90)
Restoring original desktop wallpaper. OSDSetupHook 21/12/2013 12:02:49 3444 (0x0D74)
::SystemParametersInfoW( 0x0014, 0, (LPVOID)m_sOriginalWallpaper.c_str(), 0x0002 | 0x0001 ), HRESULT=80070002 (e:\nts_sccm_release\sms\client\osdeployment\osdgina\wallpaperselector.cpp,162) OSDSetupHook 21/12/2013 12:02:49
3444 (0x0D74)
Resume SCCM Client. OSDSetupHook 21/12/2013 12:02:49 3444 (0x0D74)
Exiting SetClientProvisioningMode 0x00000000 OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Uninstalling Setup Hook OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Removing setup hook from registry. OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Successfully removed C:\Windows\system32\OSDGINA.DLL OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Could not delete the file C:\Windows\system32\OSDSETUPHOOK.EXE. Error code 5 OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Marking the file C:\Windows\system32\OSDSETUPHOOK.EXE for deletion on Reboot OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Successfully removed C:\Windows\system32\OSDSETUPHOOK.EXE OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Successfully removed C:\Windows\system32\_SMSOSDSetup OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
::RegQueryValueExW(hSubKey, szReg, NULL, NULL, NULL, &dwSize), HRESULT=80070002 (e:\nts_sccm_release\sms\framework\tscore\utils.cpp,811) OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
RegQueryValueExW is unsuccessful for Software\Microsoft\SMS\Task Sequence, SMSTSEndProgram OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
GetTsRegValue() is unsuccessful. 0x80070002. OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
End program: OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Finalizing logging from process 3440 OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Successfully finalized logs to SMS client log directory from C:\Windows\CCM\Logs OSDSetupHook 21/12/2013 12:02:54 3444 (0x0D74)
Thanks in advance!I suggest you delete the application from TS and DP, then redistribute the content to DP and add it back to TS.
If still failed, we need the ContentTransferManager.log to do furthur troubleshooting.
Juke Chou
TechNet Community Support -
Hi
Can any one tell me how to create <b>Generic BDC for transaction VK11 (Creating condition records)</b>
My actual requirement is like we need to create <b>condition record</b> for every material with all the condition types exist for that material for different key combinations . <b>A condition record for every material is to be created for different condition types and different key combinations where material MATNR is a key field .For example we need to create condition records dynamically for condition types ZPR0, ZCM0 etc.. for different key combinations where matnr is a key field .</b>
can anyone of you point out a way to me?
Thanks in advance
Shivakumarplease copy the program and use it
* Report to Upload the pricing condtion records for materials. *
* Program : ZSDR_PRICE_UPLOAD *
* Author : girish.
* Description: *
* This report Creat pricing condition records for materials *
* Tables Used : SELECT UPDATE INSERT DELETE *
* MVKE X *
* Input/Output Files: *
* Transactions called: *
* Includes: *
* Run Frequency - *
* Program History *
* Date Change No Change Request SAP Rel NSC Rel *
* Description *
* 4.6C *
REPORT zsdr_price_upload MESSAGE-ID zsdr_bdc_vk11 LINE-SIZE 150
LINE-COUNT 75 .
******Internal Table for Header Data.
TYPES : BEGIN OF type_header,
kschl LIKE konv-kschl,
vkorg LIKE vbak-vkorg,
vtweg LIKE komg-spart,
matnr LIKE mvke-matnr,
kbetr(11) TYPE c,
datab(10) TYPE c,
datbi(10) TYPE c,
END OF type_header.
****Internal Table for Item Level.
TYPES : BEGIN OF type_item,
kschl LIKE konv-kschl,
vkorg LIKE vbak-vkorg,
vtweg LIKE komg-spart,
matnr LIKE mvke-matnr,
kbetr(11) TYPE c,
datab(10) TYPE c,
datbi(10) TYPE c,
END OF type_item.
******Error Table For not found in MVKE.
TYPES : BEGIN OF type_error ,
kschl LIKE konv-kschl,
vkorg LIKE vbak-vkorg,
vtweg LIKE komg-spart,
matnr LIKE mvke-matnr,
kbetr LIKE konp-kbetr,
datab(10) TYPE c,
datbi(10) TYPE c,
text(100) TYPE c,
END OF type_error.
****For error Messages
TYPES : BEGIN OF type_mtab,
matnr LIKE mara-matnr,
msgtyp LIKE bdcmsgcoll-msgtyp,
msgid LIKE bdcmsgcoll-msgid,
msgnr LIKE bdcmsgcoll-msgnr,
text(100) TYPE c,
END OF type_mtab.
****Internal Table
TYPES: BEGIN OF type_mvke,
matnr LIKE mvke-matnr,
vkorg LIKE mvke-vkorg,
vtweg LIKE mvke-vtweg,
END OF type_mvke.
****Internal Table
TYPES : BEGIN OF type_tvkov,
vkorg LIKE tvkov-vkorg,
vtweg LIKE tvkov-vtweg,
END OF type_tvkov.
** Declaring Internal Tables
DATA : t_header TYPE STANDARD TABLE OF type_header,
t_item TYPE STANDARD TABLE OF type_item,
t_mvke TYPE STANDARD TABLE OF type_mvke,
t_tvkov TYPE STANDARD TABLE OF type_tvkov,
t_error TYPE STANDARD TABLE OF type_error,
t_mtab TYPE STANDARD TABLE OF type_mtab.
** Work Area Declaration.
DATA : wa_header LIKE LINE OF t_header,
wa_item LIKE LINE OF t_item,
wa_error LIKE LINE OF t_error,
wa_mtab LIKE LINE OF t_mtab,
wa_tvkov LIKE LINE OF t_tvkov,
wa_mvke LIKE LINE OF t_mvke.
**Rows for Table with Excel Data********
DATA: t_xls_file LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE.
***Constant.
DATA : c_params LIKE ctu_params.
DATA : c_ans(1) TYPE c.
DATA : v_count(4) TYPE c. " To show No.of records
DATA : bdctab LIKE bdcdata OCCURS 10 WITH HEADER LINE. " BDCDATA
DATA : tmess_mtab LIKE bdcmsgcoll OCCURS 10 WITH HEADER LINE.
** SELECTION SCREEN
SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS : p_fname LIKE rlgrap-filename OBLIGATORY.
SELECTION-SCREEN : END OF BLOCK b1.
* END OF SELECTION SCREEN.
DATA : repid LIKE sy-repid.
DATA : v_matnr(50) TYPE c, "used for line items
v_kbetr(50) TYPE c, "used for line items
v_dat1(50) TYPE c, "used for line items
v_dat(50) TYPE c. "used for line items
DATA : v_lindx(5) TYPE n ,"index counter for first 14 records.
v_lindx1(5) TYPE n VALUE '01', "index counter for 13 records.
v_item(5) TYPE c, "To increment the line index
v_pgedwn2 TYPE i . "For Pagedown Counter
DATA: v_currentrow TYPE i. "For Current Row
DATA v_bdc(50) TYPE c." Text to apper in Confrim POPUP Window.
************AT SELECTION-SCREEN
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.
PERFORM get_filename USING p_fname.
*************START-OF-SELECTION
START-OF-SELECTION.
******Values for Ctu_params to Transaction
c_params-defsize = 'X'.
c_params-dismode = 'N'.
c_params-updmode = 'S'.
******Refresh
PERFORM f_refresh.
*********To upload File.
PERFORM upload_file.
****User Confrimation only BDC will Process
IF c_ans = '1'.
** *** BDC Process.
PERFORM read_data.
ELSE.
FORMAT COLOR 3 INTENSIFIED .
WRITE:/ 'Selected not to Process the Upload'.
EXIT.
ENDIF.
******On completion of Process Refresh the Internal Table
REFRESH : t_xls_file,
t_header,
t_item,
t_mvke,
t_tvkov.
CLEAR : t_xls_file,
wa_header,
wa_item,
wa_mvke,
wa_tvkov.
***********Display Messages
WRITE : /01 'Status',19 'Status Text'.
WRITE AT 0(150) sy-uline.
LOOP AT t_mtab INTO wa_mtab.
WRITE :/01 wa_mtab-msgtyp,19 wa_mtab-text.
ENDLOOP.
SKIP 2.
SORT t_error BY matnr.
WRITE AT 0(150) sy-uline.
WRITE 'ERROR MESSAGES'.
WRITE AT 0(150) sy-uline.
WRITE :/01 'Material.No',20 'Status Text'.
WRITE AT 0(150) sy-uline.
LOOP AT t_error INTO wa_error WHERE matnr NE ' '.
WRITE:/01 wa_error-matnr,20 wa_error-text.
ENDLOOP.
*& Form get_filename
* text
* -->P_FILENAME text
FORM get_filename USING p_fname.
*****To read the file from Presentation Server
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
program_name = repid
dynpro_number ! ; = syst-dynnr
field_name = p_fname
* STATIC = ' '
mask = '*.XLS'
CHANGING
file_name = p_fname
EXCEPTIONS
mask_too_long = 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.
ENDFORM. " get_filename
*& Form upload_file
* text
* --> p1 text
* <-- p2 text
FORM upload_file.
DATA : frow VALUE 2 TYPE i,
fcol VALUE 1 TYPE i,
erow VALUE 10000 TYPE i,
ecol VALUE 7 TYPE i,
ecol1 VALUE 1 TYPE i,
c_col1 TYPE i VALUE '0001',
c_col2 TYPE i VALUE '0002',
c_col3 TYPE i VALUE '0003',
&nb! sp; c_col4 TYPE i VALUE '0004',
c_col5 TYPE i VALUE '0005',
c_col6 TYPE i VALUE '0006',
c_col7 TYPE i VALUE '0007'.
***FM used to UPLOAD data from Flat file
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
filename = p_fname
i_begin_col = fcol
i_begin_row = frow
i_end_col = ecol
i_end_row = erow
TABLES
intern = t_xls_file
EXCEPTIONS
inconsistent_parameters = 1
upload_ole = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE e000.
ENDIF.
****T_XLS_FILE is initial, stop the process & throw message
IF t_xls_file[] IS INITIAL.
FORMAT COLOR 6 ON INTENSIFIED ON.
WRITE:/ 'No Data Exists '.
FORMAT COLOR OFF INTENSIFIED OFF.
STOP.
ELSE.
* Sort table by rows and colums
SORT t_xls_file BY row col.
* Get first row retrieved
READ TABLE t_xls_file INDEX 1.
* Set first row retrieved to current row
v_currentrow = t_xls_file-row.
**Loop to move data in internal Table
LOOP AT t_xls_file .
* Reset values for next row
IF t_xls_file-row NE v_currentrow.
APPEND wa_header TO t_header.
CLEAR wa_header.
v_currentrow = t_xls_file-row.
ENDIF.
CASE t_xls_file-col.
WHEN c_col1. "Kschl
wa_header-kschl = t_xls_file-value.
WHEN c_col2. "Vkorg
wa_header-vkorg = t_xls_file-value.
WHEN c_col3. "vtweg
wa_header-vtweg = t_xls_file-value.
WHEN c_col4. "Matnr
wa_header-matnr = t_xls_file-value.
WHEN c_col5. "Kbetr
wa_header-kbetr = t_xls_file-value.
WHEN c_col6. "FROm
wa_header-datab = t_xls_file-value.
WHEN c_col7. "TO
wa_header-datbi = t_xls_file-value.
ENDCASE.
ENDLOOP.
APPEND wa_header TO t_header.
CLEAR wa_header.
ENDIF.
****To process the data
PERFORM f_process.
ENDFORM. " upload_file
*& Form READ_DATA
* text
* --> p1 text
* <-- p2 text
FORM read_data.
****To make Uniq Records in Header Level
SORT t_header BY kschl vkorg vtweg.
DELETE ADJACENT DUPLICATES FROM t_header COMPARING
kschl vkorg vtweg .
SORT t_item BY vkorg vtweg matnr.
DATA : wa1_item TYPE type_item.
DATA : l_cnt TYPE i.
DATA : flag(1) TYPE c. "to process the Line item.
***Looping Header Table.
LOOP AT t_header INTO wa_header.
PERFORM bdc_dynpro US! ING 'SAPMV13A' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RV13A-KSCHL'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ANTA'.
PERFORM bdc_field USING 'RV13A-KSCHL'
wa_header-kschl.
PERFORM bdc_dynpro USING 'SAPLV14A' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RV130-SELKZ(03)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=WEIT'.
PERFORM bdc_field USING 'RV130-SELKZ(03)'
'X'.
PERFORM bdc_dynpro USING 'SAPMV13A' '1004'.
PERFORM bdc_field USING 'BDC_CURSOR'
'KOMG-VKORG'.
PERFORM bdc_field USING 'KOMG-VKORG'
wa_header-vkorg.
PERFORM bdc_field USING 'KOMG-VTWEG'
wa_header-vtweg.
****To handle Line Items.
LOOP AT t_item INTO wa1_item WHERE vkorg = wa_header-vkorg AND
vtweg = wa_header-vtweg.
wa_item = wa1_item.
******Flag Set only After processing first 14 records .
IF flag = ' '.
v_lindx = v_lindx + 01.
SHIFT v_lindx LEFT DELETING LEADING '0'.
v_item = v_lindx .
CONCATENATE 'KOMG-MATNR(' v_item ')' INTO v_matnr.
PERFORM bdc_field USING v_matnr
wa_item-matnr.
CONCATENATE 'KONP-KBETR(' v_item ')' INTO v_kbetr.
PERFORM bdc_field USING v_kbetr
wa_item-kbetr.
CONCATENATE 'RV13A-DATAB(' v_item ')' INTO v_dat.
PERFORM bdc_field USING v_dat
wa_item-datab.
CONCATENATE 'RV13A-DATBI(' v_item ')' INTO v_dat1.
PERFORM bdc_field USING v_dat1
wa_item-datbi.
IF v_item = 14.
flag = 'X'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=P+'.
PERFORM bdc_dynpro USING 'SAPMV13A' '1004'.
CLEAR v_lindx.
CLEAR v_item.
CONTINUE.
ENDIF.
ENDIF.
***Flag is Set after Processing of 14 records.
****** TO process rest of Records
IF flag = 'X'.
v_pgedwn2 = v_pgedwn2 + 1.
v_lindx1 = v_lindx1 + 01.
SHIFT v_lindx1 LEFT DE! LETING LEADING '0'.
v_item = v_lindx1 .
CONCATENATE 'KOMG-MATNR(' v_it! em ')' INTO v_matnr.
PERFORM bdc_field USING v_matnr
wa_item-matnr.
CONCATENATE 'KONP-KBETR(' v_item ')' INTO v_kbetr.
PERFORM bdc_field USING v_kbetr
wa_item-kbetr.
CONCATENATE 'RV13A-DATAB(' v_item ')' INTO v_dat.
PERFORM bdc_field USING v_dat
wa_item-datab.
CONCATENATE 'RV13A-DATBI(' v_item ')' INTO v_dat1.
PERFORM bdc_field USING v_dat1
wa_item-datbi.
IF v_pgedwn2 = 13.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=P+'.
PERFORM bdc_dynpro USING 'SAPMV13A' '1004'.
v_pgedwn2 = 0.
v_lindx1 = 1.
CLEAR v_item.
CONTINUE.
ENDIF.
ENDIF.
ENDLOOP.
PERFORM bdc_field USING 'BDC_OKCODE'
'=SICH'.
****** Calling Transaction after Processing All items.
CALL TRANSACTION 'VK11' USING bdctab
OPTIONS FROM c_params MESSAGES INTO tmess_mtab.
REFRESH bdctab.
CLEAR : bdctab.
CLEAR : wa_item.
CLEAR : wa1_item.
CLEAR : wa_header.
CLEAR : l_cnt.
CLEAR : v_lindx1.
CLEAR: v_pgedwn2,v_lindx.
LOOP AT tmess_mtab .
l_cnt = l_cnt + 1.
READ TABLE t_item INTO wa_item INDEX l_cnt .
CALL FUNCTION 'MASS_MESSAGE_GET' "To get the Message Text
EXPORTING
arbgb = tmess_mtab-msgid
msgnr = tmess_mtab-msgnr
msgv1 = tmess_mtab-msgv1
msgv2 = tmess_mtab-msgv2
msgv3 = tmess_mtab-msgv3
msgv4 ! = tmess_mtab-msgv4
IMPORTING
msgtext = wa_mtab-text
EXCEPTIONS
message_not_found = 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.
wa_mtab-matnr = wa_item-matnr.
wa_mtab-msgtyp = tmess_mtab-msgtyp.
wa_mtab-msgid = tmess_mtab-msgid.
wa_mtab-msgn! r = tmess_mtab-msgnr.
APPEND wa_mtab TO t_mtab.
CLEAR wa_mtab-text.
CLEAR wa_item.
ENDLOOP.
ENDLOOP.
ENDFORM. " READ_DATA
*& Form BDC_DYNPRO
* text
* -->P_0300 text
* -->P_0301 text
* Start new screen *
FORM bdc_dynpro USING program dynpro.
CLEAR bdctab.
bdctab-program = program.
bdctab-dynpro = dynpro.
bdctab-dynbegin = 'X'.
APPEND bdctab.
ENDFORM. " BDC_DYNPRO
*& Form BDC_FIELD
* text
* -->P_0305 text
* -->P_WA_HEADER_KSCHL text
* Insert field *
FORM bdc_field USING fnam fval.
CLEAR bdctab.
bdctab-fnam = fnam.
bdctab-fval = fval.
APPEND bdctab.
ENDFORM. " BDC_FIELD
*& Form bdc_trc_ansaction
* text
* -->P_0527 text
*& Form f_Process
* text
* --> p1 text
* <-- p2 text
FORM f_process.
DATA : l_todate(12) TYPE c,
l_frdate(12) TYPE c.
***Select for all entries of material in Header "Flat File Materials".
IF NOT t_header[] IS INITIAL.
SELECT matnr vkorg vtweg FROM mvke INTO TABLE t_mvke FOR ALL ENTRIES
IN t_header WHERE matnr = t_header-matnr AND
vkorg = t_header-vkorg AND
vtweg = t_header-vtweg.
ENDIF.
*********select Sales.org & Dist.channel.
IF NOT t_header[] IS INITIAL.
SELECT vkorg vtweg FROM tvkov INTO TABLE t_tvkov FOR ALL ENTRIES IN
t_header WHERE vkorg = t_header-vkorg
AND vtweg = t_header-vtweg.
ENDIF.
***Checking for material in Sales Master Table
SORT t_mvke BY matnr vkorg vtweg.
SORT t_tvkov BY vkorg vtweg.
LOOP AT t_header INTO wa_header.
READ TABLE t_mvke INTO wa_mvke WITH KEY matnr = wa_header-matnr
vkorg = wa_header-vkorg
! ; vtweg = wa_header-vtweg BINARY SEARCH.
IF sy-subrc <> 0.
wa_error = wa_header.
&nb! sp; MOVE text-011 TO wa_error-text.
APPEND wa_error TO t_error.
DELETE TABLE t_header FROM wa_header.
ELSE.
********Date Validations
IF ( wa_header-datab NE ' ! ; ' AND wa_header-datbi NE ' ' ) .
l_todate = wa_header-datab.
l_frdate = wa_header-datbi.
REPLACE '.' INTO l_toda! te WITH ''.
REPLACE '.' INTO l_todate WITH ''.
CONDENSE l_todate NO-GAPS.
REPLACE '.' INTO l_frdate WITH ''.
REPLACE '.' INTO l_frdate WITH ''.
CONDENSE l_frdate NO-GAPS.
IF l_frdate < l_todate.
wa_error = wa_header .
MOVE text-012 TO wa_error-text.
APPEND wa_error TO t_error.
DELETE TABLE t_header FROM wa_header.
ENDIF.
ELSE.
wa_error = wa_header .
MOVE text-016 TO wa_error-text.
APPEND wa_error TO t_error.
DELETE TABLE t_header FROM wa_header.
ENDIF.
ENDIF.
********Rate Validation.
IF wa_header-kbetr = ' '.
wa_error = wa_header .
MOVE text-017 TO wa_error-text.
APPEND wa_error TO t_error.
DELETE TABLE t_header FROM wa_header.
ENDIF.
READ TABLE t_tvkov INTO wa_tvkov WITH KEY vkorg = wa_header-vkorg
BINARY SEARCH.
IF sy-subrc = 0.
READ TABLE t_tvkov INTO wa_tvkov WITH KEY vtweg = wa_header-vtweg
BINARY SEARCH.
IF sy-subrc <> 0.
wa_error = wa_header.
MOVE text-015 TO wa_error-text.
WRITE wa_header-vtweg TO wa_error-text+13(4).
APPEND wa_error TO t_error.
ENDIF.
ELSE.
wa_error = wa_header.
MOVE text-013 TO wa_error-text.
WRITE wa_header-vkorg TO wa_error-text+9(4).
APPEND wa_error TO t_error.
ENDIF.
CLEAR wa_header.
ENDLOOP.
*****Deleting Duplicate Material Form Header "Flat File Data".
SORT t_header BY kschl vkorg vtweg matnr.
DELETE ADJACENT DUPLICATES FROM t_header COMPARING
kschl! vkorg vtweg matnr .
* ****Data Moving from Header to Item Level.
t_item[] = t_header[].
*To count No.of records in Item Table.
DESCRIBE TABLE t_item LINES v_count.
CONCATENATE text-014 ' ' v_count INTO v_bdc.
****Popup to get Confirmation from user to process BDC
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
titlebar = 'Confirmation of File Data'
text_question = v_bdc
text_button_1 = 'Confirm'
text_button_2 = 'Cancel Run'
default_button = '1'
IMPORTING
answer = c_ans.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-! MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " f_Process
*& Form f_Refresh
* text
* --> p1 text
* <-- p2 text
FORM f_refresh.
REFRESH : t_xls_file,
t_header,
t_item,
t_mvke,
t_tvkov,
t_error,
t_mtab.
CLEAR : t_xls_file,
wa_header,
wa_item,
wa_mvke,
wa_tvkov,
wa_error,
wa_mtab.
ENDFORM. " f_Refresh
reward point s if it is usefull ....
girish -
An XServe Right For The Job?
hi, I have about six computers, all of which are under constant use.
Some are Windows based but mostly Apple.
Problems we're experiencing;
- Many of our photographs are duplicated on many machines.
- Many of our iTunes music is duplicated on many machines.
- Much of the other files we wish to use are the same.
- Backing up six computers is a pain! - I am using BackUp3, but convincing older members of family to do the same is hard work!
They are all networked. Mostly ethernet-wired, but I do have two wireless access points for the two laptops. (Property spans over fairly large distance, with stupidly thick heavy walls!)
I have an ethernet switch 10/100mbps, network (ie ethernet) modem/router with a built in DHCP server. - Which is brilliant, because it means that our internal ipaddresses remain the same.
I know that it's possible to put all the music on one machine and then share it using MUSIC SHARING. This isn't great cos the machine has to be on all the time and has to have iTunes loaded. (And individual hard drive space isn't brilliant)
What we need.
Apple Remote Desktop 3 is a MUST. It's a lifesaver, and it's used via VNC for the unfortunate Windows PCs.
iTunes music source folder to be shared. So it's only on one location.
Possibly iPhoto Libary, although that might be a little harder to do, ie, if I made the computers automatically connect to a network drive/server, then I can point the iTunes source folder at it, I'm not sure how I would do that with iPhoto. (here comes another post)
Maybe centrally held HOME FOLDERS but with the option of making caches for the laptops, as they will be used elsewhere. (with the idea of syncing them once they're back.)
- I have read about being able to access home folders on Windows, then going and seeing your changes on your MAC, does this work with XP home, or does it have to be professional?
Possible tracking of internet/program history, sounds a bit intrusive, but at the moment there really isn't a great way of tracking what younger siblings are accessing.
If it's possible to lock out users from certain parts of the System Preferences that would too be great.
ie, Eldest and most computer illiterate person in the family to be aloud to install programs, but not add new user accounts etc.
Please let me know how much/little of my requirements can be met using XServe.
TIA for any help you can give
Dan Walters
danielwalters(at)mac.com
Various Powerbooks, iBooks, Apple Desktops, Windows Desktops. Mac OS X (10.4.8)Maybe a Mac mini running OSX Server.... An Xserve
would work if you got somewhere to hide it. A big
closet. That is well ventilated. Maybe in the
basement.
Sounds good, is it easier to upgrade the XServe or the Mini?
ie, add new hard drives, because that's basically what we will need for it.
Unfortunately, not many houses in England, have basements!
I'm not too sure why.
I do have an appropriate "room" to put it all in. Currently it houses my switches and network patch pannels.
By the time funds are available Leopard Server may be available! -
How culd b a prog. name under development field for standard SAP prog.??
Hi Experts,
Just curious that, a FI/CO prog. with name GP2I9IU2LWTB3VSHAU4K8ENBKLB100 (its associate tx is a FI/CO transaction, its S_ALR_87012993 ) noticed that, its developed & changes by here my coleague at client place-SAP customer( I mean to say that, NOT by SAP)......but, I do not undesratnd that, How it culd b possible that, its developed & changed by other than SAP!!!!! it shuld b a standard SAP tx and prog. right??
I know it happens for Z FM development, VOFM developments etc., but here how its?
thanqThis is report writer/painter program,this is not an custom ABAP program.So once anyone create report/painter with SAP tools,system generetes default program in behind the scene.And by default the USERid of owner will be created under program history.
As like below:
REPORT GP6LOHEDHH7OAU3YK4SZ542BX4I600 MESSAGE-ID GR
NO STANDARD PAGE HEADING
LINE-SIZE 170 LINE-COUNT 58.
* Executable for report group ZPC1 *
* report group : ZPC1 Profit Center Accouting *
* program class : RW_EXECUTION *
* program version: 00000002 *
* client : 600 *
* user : GUJARGOUD *
* date : 12/11/08 *
* time : 12:42.59 *
* release : 700 *
I made this report by Reporting tools but i didn't create any program.System automatically generates the History and ABAP program it self. -
I am receiving the following message every time I try to open another window when using Firefox 'Firefox is already running but not responding. To open a new window you must first colse the existing Firefox process or restart your system.' This is becoming ridiculous and extremely time consuming. I have uninstalled and reinstalled Firefox but the problem remains. How do I resolve this? I will be sorry to abandon Firefox after many happy years of use but I will have to if thi9s problem persists.
I received the same message after updating my Java to 6 update 29, after FF crashed and I tried to bring it back up.
I logged off first, and then did the restart, and not only were my 2 Java plugins updated, but everything was fine.
Have you tried to restart your computer (maybe a dumb question, but I'm asking since I just went through the same message, after updating Java through a link, rather than through FF...wrong move, btw, I'll do it through FF next time).
Also, I open a blank tab and clear my cache periodically, if I start to slow down.
Another tip I picked up in the forums tonight, was to change the default as to memory that can be used. I have XP, so here is how I did it...clicked on tools, then options, then network and I was defaulted to 5 mbs. I changed it to 40 mbs, since I clean the cache alot and clean with CCleaner ALWAYS before I sign off the computer.
You can download CCleaner free..just search for CCleaner and download free via Pirifoam. I love it and have used it for years! It cleans all the crap, i.e. stuff left over when you uninstall a program; history, cookies & temp files from all browsers on your system and much more. It's great!
I have a older computer, so I clean diligently, plus keep the Windows updated manually (so I don't get updates I don't want), and defrag, etc.
I've just come back to FF, too. I kept getting these persistent cookies on IE, that my Norton AV would clear and BAM, the next time I uploaded IE (without doing anything on it) there they would be again, when I ran my AV! Also, Facebook has a nasty cookie that follows you all over the internet, AFTER you sign off. So I clean ALOT.
Good luck, I hope you can work it out and keep FF! :)
Donna
PS I wonder if you have remnants of the old installation left over, since you said you reinstalled FF. Try using CCleaner, as it will get rid of any remnants of uninstalled programs for you! -
How to install ruby-wmii on wmii 3.6?
I installed wmii3.6 after ion3 was pull out from the repo.
It feels great. I also was amazed by ruby-wmii and I went ahead to try by
darcs get http://eigenclass.org/repos/ruby-wmii/branch-ruby-ixp/
cd branch-ruby-ixp
ruby install.rb
However, I was not able to open "xterm", neither launch any program by dmenu (Alt+p), BUT the built-in "actions" (alt+a) worked.
I checked the ~/.wmii-3.5/wmiirc.log. It gave me the following
D, [2007-12-25T15:36:39.801699 #9261] DEBUG -- : Got "Key Mod1-Return\n"
sh: x-terminal-emulator: command not found
sh: amixer: command not found
D, [2007-12-25T15:36:42.329407 #9261] DEBUG -- : Got "Key Mod1-p\n"
D, [2007-12-25T15:36:44.265700 #9763] DEBUG -- : dmenu("firefox") finished
I, [2007-12-25T15:36:44.265976 #9261] INFO -- : Executing firefox
sh: ssid: command not found
D, [2007-12-25T15:36:44.327179 #9261] DEBUG -- : plugin/programs: history "firefox"
sh: amixer: command not found
sh: amixer: command not found
D, [2007-12-25T15:36:49.152900 #9261] DEBUG -- : Got "Key Mod1-p\n"
D, [2007-12-25T15:36:50.801237 #9786] DEBUG -- : dmenu("xterm") finished
I, [2007-12-25T15:36:50.801497 #9261] INFO -- : Executing xterm
sh: ssid: command not found
D, [2007-12-25T15:36:50.864584 #9261] DEBUG -- : plugin/programs: history "xterm"
sh: amixer: command not found
D, [2007-12-25T15:36:53.880597 #9261] DEBUG -- : Got "Key Mod1-a\n"
sh: amixer: command not found
D, [2007-12-25T15:36:54.640965 #9804] DEBUG -- : dmenu("quit") finished
D, [2007-12-25T15:36:54.641275 #9261] DEBUG -- : plugin/actions: history ["quit"]
D, [2007-12-25T15:36:54.643053 #9261] DEBUG -- : Got "Bye\n"
Has anyone made this succeed>
Please tell me how
Thanks!Try to install ssid. It's in AUR.
If you want to change your terminal to urxvt change:
plugin_config["standard"]["x-terminal-emulator"] = "urxvt" -
Migrating Access Database to Web WITH FORMS (not just backend)
How difficult would this be, what steps would be involved and is Dreamweaver capable of helping?
The server uses IIS and ASP so compatibility should be fine with access.
I have enough of a programming history to replace vbasic code with ASP code if I read about the language, but would like to do the least amount of work required.Lets just say that Access and Oracle are completly different animals and leave it at that. What I believe you need to do is:
1. Create an Oracle Database using the Database Creation Assistant. (Keep all the Defaults, and keep track of any passwords that are used.
2. Using the System (DBA) account, crate a user to hold the Access Schema (Never create objects in the SYS account and you shouldn't do that with the SYSTEM account either.
3. Run the Access Migration Workbench. -
What makes YOU a good programmer?
Just curious as to what sort of strengths my fellow programmers in particular what one thing do you think gives you an advantage over most people?
I like to think I have a good memory, I can just look at a class diagram of a program I wrote two years ago(my programming history :) and I can remeber all of the logic behind it and a large portion of the implementation.
There are so many situations where a good memory comes in handy... certainly when your trying to find out why a certain part of a program is not working and you know from memory some method signatures of a distant superclasses because you skimmed through its API one day.Over the years, I've worked with all sorts of software developers ranging from Mensa geniuses to tech school drop-outs. Though my I.Q. isn't genius level, it is well above average. Everywhere I've worked I've always moved to the top very quickly, despite the talented and intelligent people that I pass up along the way. I always seemed be fixing bugs that these supposedly highly sought after developers were creating, while my code was consistently breezing through the test department. I actually claim to be the creator of the title "Software Janitor" (which has a good story surrounding its creation). One time, a developer I was mentoring asked me, "How did you get so good?" The answer was obvious to me, but is completely overlooked by most others. It's my ATTITUDE toward software development that sets me apart. So, for only the second time in history being made available to the general public, without further ado, here is "Fred's Software Development Attitude".
In no particular order
Software development is a science, not an art. There is still a great deal of creativity involved in software development, but development methodologies should be understood and utilized. Development standards should be adhered to as closely as possible.
Comment your code. Accept from the start of a development task that somebody else will eventually examine the code that you are writing and will need to understand what is going on. Make your code neat and readable, and use comments in first person form. Remember, through your comments you are communicating directly with the reader, and that the reader may not be as experienced as you are.
Watch your code execute. When ever possible, you should white-box test your code to make sure that all of the conditions that you wrote execute as you planned. Sometimes white-box testing cannot be performed adequately in the environment in which you are working. In that case, get creative and invent a way to test the code.
Aesthetics are on equal footing with function. This does not mean that you should load up your user interface with cool graphics. A user interface should appear neat and organized. User interface features must be consistent throughout the application, and you should adhere to platform specific user interface standards.
When given a new development task, assume that it can be done. Then ask yourself, "How can I do this?" Do not waste time wondering if the task is possible. Always assume from the start that it can be done, and that you will find a way to do it. Eliminate the impossible through reasoning.
Know your development tool. If you are wasting time hunting for features in your development tool, you are wasting valuable creative time. Take the time that you need to learn your development tool. It is an investment in yourself and your company. -
When I started using Arch Linux, I didn't know anything about the ABS or, really, the AUR. I just knew that the AUR was this thing that I could download moar programs from.
Soon, I wanted to maintain packages in the AUR, and I asked here for help, because I could not find any info in the wiki, (and its still kinda hard if you dont know what your looking for). But i -still- didn't actually KNOW what I was expected to do, or how to do it. Even though I had been using yaourt for a while, I knew nothing about the AUR. I didn't know that there was a web interface, I didn't know you could download PKGBUILD's from it, or even what to do once you did download a PKGBUILD. This is all really obvious to me now, but then, i knew nothing.
What I do not like about yaourt, or any of the CLI AUR interfaces, is that they are really not very interactive. The user does not (to my knowledge) have any control over where the program builds the .pkg file, or if they want to run makepkg -s with other options, etc.
Enter AurNinja.
AurNinja is a python script that I am working on that aims to solve these issues. It has two "modes" compile from source, or from AUR. Choosing AUR will allow you to search the AUR database for the PKGBUILD that you are looking for. AurNinja is built upon the idea that if you are going to install python bindings for AbiWord (pyabiword) you are going to search for "pyabiword" and not for "python" and search through pages and pages to find what you are looking for. AurNinja puts the control entirley in the hands of the end user. Asking questions such as "run makepkg -s?" ... "with any additional options?" or even more so, "using '/tmp/{PKGNAME}' for build directory, is this ok?"
Choosing the source option will ask you a series of questions, and generate a PKGBUILD for you, should you wish, it will also compile, and install the package you are working with. It will even download the source code for you!
If you think this is interesting, or would like to try it out, I have provided links below. I greatly appreciate any feedback!
As stated before, I have -no- programming history, so I might not be able to fulfill all feature requests, but I will try!
http://aur.archlinux.org/packages.php?ID=34978 AUR PKGBUILD
http://72.195.142.200:8080/ Project Home Page.
Last edited by C7vxz8 (2010-02-24 20:30:38) -
When Will Beta Yosemite Come Out?
I am just curious. I signed up for Apple's Beta Mac OS X Yosemite program.
History says, that when one of the 4 seasons is given as a release timeframe, it is generally much closer to the end of the season, then the beginning. In Cupertino, California, USA, Summer starts 21-Jun-2014 (Summer Solstice) and Summer ends 22-Sep-2014 (Autumnal Equinox).
Technically, Summer has not started at Apple headquarters, and chances are Ysemite will not appear for a few more months.
If you are desperate for Yosemite, then become a developer and load the beta software (on a spare machine that does not touch any of your critical, must not loose it, data, as beta software is unsafe).
Maybe you are looking for
-
I do not know my apple administrator username and password. How do I find out what it is? I am trying to download IBM Notes and Domino onto my MacBook Pro and I cannot download the software without verifying my apple administrator username and passwo
-
I don't remember if there was a software update around the time this started happening. i did only used to have an AIM and gmail account linked to it, I added another Google account and that's when the Jabber thing popped up, I don't believe I ever s
-
Oracle9i Reports J2EE Thin Client
Hi all, I tried to create a own report servlet with the Oracle9i Reports J2EE Thin Client. The reason I want to have a own report servlet is, I want to have a own path to access the reports. At the moment it is possible to access the reports with the
-
Animating a line by moving bezier handles, points
I'm working on a clip that simply moves lines around the stage and makes them bend. It seems very easy to do this, in a sloppy and uncontrolled kind of way, with the record button on, moving to different points along the timeline and moving the handl
-
Appointments deleted in Outlook remain on BB...
Hi All, We just implemented BlackBerry Professional Server with a handful of users and I've noticed the following behavior: When a calendar appointment is created on the BB, it syncs with Outlook and appears there as well. If the appointment is the