How to save matrix do user table?
Hi,
I have created on system form matrix as:
oNewItem = oOrderForm.Items.Add("a", SAPbouiCOM.BoFormItemTypes.it_MATRIX)
oNewItem.Top = 150
omatrix1 = oNewItem.Specific
oColumns = omatrix1.Columns
oColumn = oColumns.Add("#", SAPbouiCOM.BoFormItemTypes.it_EDIT)
oColumn.TitleObject.Caption = "#"
oColumn.Width = 20
oColumn.Editable = False
oColumn = oColumns.Add("code", SAPbouiCOM.BoFormItemTypes.it_EDIT)
oColumn = oColumns.Add("name", SAPbouiCOM.BoFormItemTypes.it_EDIT)
oColumn = oColumns.Add("cesta", SAPbouiCOM.BoFormItemTypes.it_EDIT)
This matrix i have bounded to datasource as:
oDBDataSource = oOrderForm.DataSources.DBDataSources.Add("@SKIL_ATTACH")
oConditions = New SAPbouiCOM.Conditions
oCondition = oConditions.Add
oCondition.BracketOpenNum = 2
oCondition.Alias = "U_PATH"
oCondition.Operation = SAPbouiCOM.BoConditionOperation.co_EQUAL
oCondition.CondVal = "xxx"
oCondition.BracketCloseNum = 1
oDBDataSource.Query(oConditions)
oItem = oOrderForm.Items.Item("a")
omatrix1 = oItem.Specific
oColumns = omatrix1.Columns
oColumn = oColumns.Item("cesta")
oColumn.DataBind.SetBound(True, "@SKIL_ATTACH", "U_XCESTA1")
oColumn = oColumns.Item("code")
oColumn.DataBind.SetBound(True, "@SKIL_ATTACH", "CODE")
oColumn = oColumns.Item("name")
oColumn.DataBind.SetBound(True, "@SKIL_ATTACH", "NAME")
omatrix1.LoadFromDataSource()
The user table has 3 my fields (U_Path, U_xcesta and U_xcesta1) abd 2 fileds (code and name) - this two fields i didnt create, i think that are some system fields?
On the system form everything seems to be ok, I can add rows, modify data, set new data, ... After changing any data in this matrix, the system button will change from OK to Update or Add and after click on this button in status bar is OK, the data was added or updated...
The problem is, that in user table aren`t data modified and there are still old data.
I tried to make update manually as:
oItem = oOrderForm.Items.Item("a")
omatrix1 = oItem.Specific
omatrix1.AddRow(1, 0)
Dim cell As SAPbouiCOM.Cell
Dim col As SAPbouiCOM.Column
Dim ed As SAPbouiCOM.EditText
col = omatrix1.Columns.Item("code")
cell = col.Cells.Item(1)
ed = cell.Specific
ed.String = CStr("some data")
omatrix1.Columns.Item("cesta").Editable = True
omatrix1.Columns.Item("cesta").Cells.Item(1).Click(SAPbouiCOM.BoCellClickType.ct_Double)
omatrix1.FlushToDataSource()
omatrix1.AddRow(1, 1)
but nothing happens and data in table are still old. What I`m doing bad? Could anyone help me please?
Please be patient, because Im working with SBO for short time. Thanks!
I solved is through manual updating and inserting to database as"
oUserTable = oCompany.UserTables.Item("SKIL_ATTACH")
oOrderForm.DataSources.DataTables.Item(0).ExecuteQuery("SELECT coalesce(max(convert(integer, code)),0) as max from dbo.[@SKIL_ATTACH] with(nolock)")
oUserTable.UserFields.Fields.Item("U_Popis").Value = "xxxxx"
oUserTable.UserFields.Fields.Item("U_PATH").Value = "xxxxx"
oUserTable.UserFields.Fields.Item("U_OP").Value = "xxxxx"
lRetCode = oUserTable.Add
It works, but I think that it is not the easiest way.
Similar Messages
-
How to updated matrix into related table?
hi, can anyone help me below coding how to updated matrix into related table?
Thank you.
For rowNum = 0 To oMatrix.RowCount
oRecordset.Fields.Item("Code").Value = oMatrix.Columns.Item("DSCode").Cells.Item(rowNum).Specific.Value
oRecordset.Fields.Item("Name").Value = oMatrix.Columns.Item("DSName").Cells.Item(rowNum).Specific.Value
oRecordset.Fields.Item("U_RPTC").Value = oMatrix.Columns.Item("DSReport").Cells.Item(rowNum).Specific.Value
oRecordset.Fields.Item("U_USRC").Value = oMatrix.Columns.Item("DSUser").Cells.Item(rowNum).Specific.Value
oRecordset.MoveNext()
NextFor Fast Matrix Loading you can user some thing like this.
Dim Column As SAPbouiCOM.Column
Dim Matrix As SAPbouiCOM.Matrix
Dim Table As SAPbouiCOM.DataTable
Table = oForm.DataSources.DataTables.Add("Documents")
Table.Columns.Add("Code", SAPbouiCOM.BoFieldsType.ft_Integer)
Table.Columns.Add("Name", SAPbouiCOM.BoFieldsType.ft_Integer)
Table.Columns.Add("U_RPTC", SAPbouiCOM.BoFieldsType.ft_AlphaNumeric, 255)
Table.Columns.Add("U_USRC", SAPbouiCOM.BoFieldsType.ft_AlphaNumeric, 255)
Matrix = oForm.Items.Item("MatrixUID").Specific
Column = Matrix.Columns.Item("Code")
Column.DataBind.Bind("Documents", "Code")
Column = Matrix.Columns.Item("Name")
Column.DataBind.Bind("Documents", "Name")
Column = Matrix.Columns.Item("U_RPTC")
Column.DataBind.Bind("Documents", "U_RPTC")
Column = Matrix.Columns.Item("U_USRC")
Column.DataBind.Bind("Documents", "U_USRC")
Table.ExecuteQuery(SQLQuery)
Matrix.LoadFromDataSource() 'Load The Data to the Matrix
To pull the data form the display back to the Table you can use this
Matrix.FlushToDataSource() -
How to save file in users temp directory in java
How to save file in users temp directory as "<Drive Name>:\Documents and Settings\<User Name\Local Settings\Temp".
Shouldn't the System property "user.home" reference to that directory on windows? So if you call System.getProperty("user.home");, I think it should return that path at least up to <User Name>. I never really tried it on Windows though.
-
How to save changes in a Table?
Hi Experts,
I have included my own component into an SAP component as an assigment block. My component shows a table (Table Context Node). I have made some columns editable. However, when I try to make changes in this table, after pushing the Enter Button, the chaged values is being replaced by the old value.
I have set
rv_disabled = 'FALSE'.
in my GET_I_<attribute name> method. I guess there are other things to do..?
How can I make and save changes in my table?
Thanks, JohannesHi,
I just saw that in Method IF_BOL_BO_PROPERTY_ACCESS~SET_PROPERTY , the condition:
if ME->IS_CHANGEABLE( ) = ABAP_TRUE and
LV_PROPS_OBJ->GET_PROPERTY_BY_IDX( LV_IDX ) ne IF_GENIL_OBJ_ATTR_PROPERTIES=>READ_ONLY.
is skipped (coding in IF statement is skipped)..
I think the IS_CHANGEABLE( ) thing is "true", but
IF_GENIL_OBJ_ATTR_PROPERTIES=>READ_ONLY
is set..
Where/ how can I set/ reset this? I have had a look around and did not find anything..
Thanks, Johannes -
How to load data into user tables using DIAPIs?
Hi,
I have created an user table using UserTablesMD object.
But I don't have know how to load data into this user table. I guess I have to use UserTable object for that. But I still don't know how to put some data in particular column.
Can somebody please help me with this?
I would appreciate if somebody can share their code in this regard.
Thank you,
SudhaYou can try this code:
Dim lRetCode As Long
Dim userTable As SAPbobsCOM.UserTable
userTable = pCompany.UserTables.Item("My_Table")
'First row in the @My_Table table
userTable.Code = "A1"
userTable.Name = "A.1"
userTable.UserFields.Fields.Item("U_1stF").Value = "First row value"
userTable.Add()
'Second row in the @My_Table table
userTable.Code = "A2"
userTable.Name = "A.2"
userTable.UserFields.Fields.Item("U_1stF").Value = "Second row value"
userTable.Add()
This way I have added 2 lines in my table.
Hope it helps
Trinidad. -
How do I create new user table in program and then access it?
I am writing an application where I check for the existence of user objects when the add on starts and run the setup if the objects do not exist. I can create the user tables and fields but after the setup completes these objects still are not visible.
If the user objects exist when the add on is first run everything is detected correctly.
When a user object is added in SAP the user is eventually prompted to restart so I suspect something needs to happen prior to the add on being able to use the new fields.
Does the add on need to wait for the DI Server to perform some action? Do I need to just quit the add on's class and rerun it, disconnect and reconnect to the company, or get a new Application and/or company object?
What I want to do is figure out a way for the add on to automatically run the configuration if the user tables and fields do not exist yet and then kick off the regular add on code. I haven't seen anyone else's code so I don't know what is recommended or required here.
Thanks for any assistance!I found that the add on can validate the existance of the user fields if I disconnect from the company object, set the SAPbouiCOM.Application and SAPbobsCOM.Company objects to null, set the new application, context, and company objects, and reconnect once more.
HOWEVER...
I still have to wait for the client to be restarted manually before I can run any of the form I added to the menu.
So, I'd still like to know what the best practice is here. Should I just exit after setting up the tables and tell the user to restart SAP? -
How to catch events on user tables forms?
Hi all,
Is there any way to catch the events on user defined tables' form which opens from Tools-User Tables? The form Id we get is not unique so we can't initialize the form with that ID or put it in an If loop for pval.formUId.
any clues?
Thanks in advance.....Hi Binita,
The UDT form should have a form type in the format:
110xxx
where xxx is the value in the TblNum field in the OUTB table (eg 110015 if the TblNum field is 15).
Therefore, you can query the OUTB table for your UDT name and get the correct TblNum value and then calculate the correct form type for your table. If you want to filter events then you'll need to run this query as your addon starts and dynamically add the correct event types and filters to your addon.
Kind Regards,
Owen -
Can any one tell me How to load data in matrix from user table
Hi,
we need to load data to matrix when page loads. After loading data we should add row to that matrix and update the values in database without effecting previous data. It should have functionality like UDO Default Form. Can any help me out in this issue.
Regards,Hi Souji,
try this,
SAPbouiCOM.Form oForm;
SAPbouiCOM.DataTable DBTable;
SAPbouiCOM.DBDataSource dbDatasource;
string strqry;
oForm = SBO_Application.Forms.Item("FormUID");
int i;
SAPbouiCOM.Item oitem;
oitem = oForm.Items.Item("ItemUID");
objMatrix = (SAPbouiCOM.Matrix)oitem.Specific;
objMatrix.AddRow(1, objMatrix.RowCount + 1);
dbDatasource = (SAPbouiCOM.DBDataSourceoForm.DataSources.DBDataSources.Item("TableName");
DBTable= oForm.DataSources.DataTables.Add("UniqueName");
strqry = "paste Query that you want to fetch";
DBTableActivity.ExecuteQuery(strqry);
for (i = 0; i <= DBTable.Rows.Count - 1; i++)
objMatrix.FlushToDataSource();
dbDatasource.SetValue("column1(name)", i, System.Convert.ToString(DBTable.GetValue(0, i)));
dbDatasource.SetValue("column2(name)", i, System.Convert.ToString(DBTable.GetValue(1, i)));
dbDatasource.SetValue("column3(name)", i, System.Convert.ToString(DBTable.GetValue(2, i)));
dbDatasource.InsertRecord(i + 1);
objMatrix.LoadFromDataSource();
If it helps you, give me the reward points.
Thanks
Sravan Kumar Pothu -
How to save message into internal table?
Hi,everyone!
I have a problem when I'm coding.I want to store messages into a internal table.Can you help me?
Thanks!Hello Feng
If you are already working on SAP basis release >= 6.20 I would recommend the most versatile message handler of all: interface <b>IF_RECA_MESSAGE_LIST</b>
Perhaps you will find the following sample report ZUS_SDN_APOLLO_13
(see also: <a href="https://wiki.sdn.sap.com/wiki/display/profile/2007/07/09/MessageHandling-FindingtheNeedleintheHaystack">Message Handling - Finding the Needle in the Haystack</a>) useful.
*& Report ZUS_SDN_APOLLO_13
REPORT zus_sdn_apollo_13
LINE-SIZE 200.
TYPE-POOLS: abap.
TYPES: BEGIN OF ty_s_outtab.
TYPES: status TYPE exception.
INCLUDE TYPE bapiret2 AS msg.
TYPES: END OF ty_s_outtab.
TYPES: ty_t_outtab TYPE STANDARD TABLE OF ty_s_outtab
WITH DEFAULT KEY.
DATA:
gs_layout TYPE lvc_s_layo,
gt_outtab TYPE ty_t_outtab.
DATA:
gd_title TYPE lvc_title,
gd_msgv TYPE symsgv,
gd_msg TYPE bapi_msg,
gs_msg TYPE recamsg,
gs_return TYPE bapiret2,
gt_return TYPE bapirettab,
go_msglist TYPE REF TO if_reca_message_list,
go_random TYPE REF TO cl_random_number,
gif_random TYPE REF TO if_random_number.
PARAMETERS:
p_opt1 RADIOBUTTON GROUP radi DEFAULT 'X',
p_opt2 RADIOBUTTON GROUP radi,
p_opt3 RADIOBUTTON GROUP radi.
SELECTION-SCREEN ULINE.
PARAMETERS:
p_opt4 RADIOBUTTON GROUP radi,
p_opt5 RADIOBUTTON GROUP radi,
p_opt6 RADIOBUTTON GROUP radi.
SELECTION-SCREEN ULINE.
PARAMETERS:
p_count TYPE numc3 DEFAULT '4',
p_level TYPE ballevel DEFAULT '7'.
DEFINE mac_build_msg.
clear: gs_msg.
gs_msg-msgty = &5.
gs_msg-msgid = '00'.
gs_msg-msgno = '398'.
gs_msg-msgv1 = &1.
gs_msg-msgv2 = &2.
gs_msg-msgv3 = &3.
gs_msg-msgv4 = &4.
gs_msg-detlevel = &6.
END-OF-DEFINITION.
* msgty
* msgid
* msgno
* msgv1
* msgv2
* msgv3
* msgv4
* msgv1_src
* msgv2_src
* msgv3_src
* msgv4_src
* detlevel
* probclass
* alsort
* time_stmp
* msg_count
* context
* params
START-OF-SELECTION.
" Create message handler
go_msglist = cf_reca_message_list=>create( ).
" Create random number instance
CREATE OBJECT go_random TYPE cl_random_number.
gif_random ?= go_random.
gif_random->init( ).
PERFORM message_handling_1.
PERFORM message_handling_2.
PERFORM message_handling_3.
PERFORM message_handling_4.
END-OF-SELECTION.
*& Form MESSAGE_HANDLING_1
* text
* --> p1 text
* <-- p2 text
FORM message_handling_1 .
CHECK ( p_opt1 = abap_true ).
gd_title = 'Information System 1 (IS1)'.
SET TITLEBAR 'TITLE' WITH gd_title.
WRITE: / 'Apollo 13 Mission'.
WRITE: / syst-uline.
WRITE: / 'Take-Off -> ok'.
WRITE: / 'Leaving Orbit -> ok'.
WRITE: / 'Trajectory -> ok'.
WRITE: /.
FORMAT COLOR COL_NEGATIVE.
WRITE: / 'Explosion happened -> not ok'.
WRITE: / 'Command and Service module (CSM) -> damaged'.
FORMAT RESET.
WRITE: / 'Lunar module (LM) -> not affected, ok'.
MESSAGE text-hou TYPE 'S'.
ENDFORM. " MESSAGE_HANDLING_1
*& Form message_handling_2
* text
* --> p1 text
* <-- p2 text
FORM message_handling_2 .
* define local data
DATA:
ld_success(6) TYPE n,
ld_warning(6) TYPE n,
ld_failure(6) TYPE n,
ld_total(6) TYPE n.
CHECK ( p_opt2 = abap_true ).
gd_title = 'Information System 2 (IS2)'.
SET TITLEBAR 'TITLE' WITH gd_title.
PERFORM generate_messages. " simulation of messages
CALL METHOD go_msglist->get_list_as_bapiret
IMPORTING
et_list = gt_return.
" Calculate message types and total
ld_total = 0.
ld_success = 0.
ld_warning = 0.
ld_failure = 0.
" Print messages as WRITE list
LOOP AT gt_return INTO gs_return.
IF ( gs_return-type = 'E' ).
ADD 1 TO ld_failure.
ELSEIF ( gs_return-type = 'W' ).
ADD 1 TO ld_warning.
ELSE.
ADD 1 TO ld_success.
ENDIF.
ENDLOOP.
ld_total = ld_success + ld_warning + ld_failure.
WRITE: / 'Total Message =', ld_total.
WRITE: / 'Failures =', ld_failure.
WRITE: / 'Warnings =', ld_warning.
WRITE: / 'Successes =', ld_success.
WRITE: / syst-uline.
SKIP.
" Colouring depending on message type
LOOP AT gt_return INTO gs_return.
IF ( gs_return-type = 'E' ).
FORMAT COLOR COL_NEGATIVE.
ELSEIF ( gs_return-type = 'W' ).
FORMAT COLOR COL_TOTAL.
ELSE.
FORMAT RESET.
ENDIF.
WRITE: / gs_return-type, gs_return-message+0(100).
ENDLOOP.
ENDFORM. " message_handling_2
*& Form message_handling_3
* text
* --> p1 text
* <-- p2 text
FORM message_handling_3 .
* define local data
DATA:
ls_outtab TYPE ty_s_outtab.
DATA:
ld_success(6) TYPE n,
ld_warning(6) TYPE n,
ld_failure(6) TYPE n,
ld_total(6) TYPE n.
CHECK ( p_opt3 = abap_true ).
gd_title = 'Information System 3 (IS3)'.
SET TITLEBAR 'TITLE' WITH gd_title.
PERFORM generate_messages. " simulation of messages
CALL METHOD go_msglist->get_list_as_bapiret
IMPORTING
et_list = gt_return.
REFRESH: gt_outtab.
" Calculate message types and total
ld_total = 0.
ld_success = 0.
ld_warning = 0.
ld_failure = 0.
" Define the logic for setting exception status (LED)
LOOP AT gt_return INTO gs_return.
CLEAR: ls_outtab.
ls_outtab-msg = gs_return.
IF ( gs_return-type = 'E' ).
ls_outtab-status = '1'. " red
ADD 1 TO ld_failure.
ELSEIF ( gs_return-type = 'W' ).
ls_outtab-status = '2'. " yellow
ADD 1 TO ld_warning.
ELSE.
ls_outtab-status = '3'. " green
ADD 1 TO ld_success.
ENDIF.
APPEND ls_outtab TO gt_outtab.
ENDLOOP.
ld_total = ld_failure + ld_warning + ld_success.
CLEAR: gs_layout.
gs_layout-cwidth_opt = abap_true.
gs_layout-zebra = abap_true.
gs_layout-excp_fname = 'STATUS'.
gs_layout-excp_led = abap_true.
gs_layout-smalltitle = abap_true.
CONCATENATE 'T(' ld_total ') '
'E(' ld_failure ') '
'W(' ld_warning ') '
'S(' ld_success ') '
INTO gd_title SEPARATED BY space.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
EXPORTING
i_structure_name = 'BAPIRET2'
i_grid_title = gd_title
is_layout_lvc = gs_layout
TABLES
t_outtab = gt_outtab
EXCEPTIONS
OTHERS = 1.
ENDFORM. " message_handling_3
*& Form message_handling_4
* text
* --> p1 text
* <-- p2 text
FORM message_handling_4 .
* define local data
CHECK ( p_opt4 = abap_true OR
p_opt5 = abap_true OR
p_opt6 = abap_true ).
IF ( p_opt4 = abap_true ).
gd_title = 'Information System 4 (IS4)'.
SET TITLEBAR 'TITLE' WITH gd_title.
ELSEIF ( p_opt5 = abap_true ).
gd_title = 'Information System 5 (IS5)'.
SET TITLEBAR 'TITLE' WITH gd_title.
ELSE.
gd_title = 'Information System 6 (IS6)'.
SET TITLEBAR 'TITLE' WITH gd_title.
ENDIF.
PERFORM generate_messages. " simulation of messages
PERFORM display_log.
ENDFORM. " message_handling_4
*& Form GENERATE_MESSAGES
* text
* --> p1 text
* <-- p2 text
FORM generate_messages .
* define local data
mac_build_msg 'Apollo 13 Mission: Spacecraft'
space space space 'I' '1'.
** DEFINE mac_build_msg.
** clear: gs_msg.
** gs_msg-msgty = &5.
** gs_msg-msgid = '00'.
** gs_msg-msgno = '398'.
** gs_msg-msgv1 = &1.
** gs_msg-msgv2 = &2.
** gs_msg-msgv3 = &3.
** gs_msg-msgv4 = &4.
** gs_msg-detlevel = &6.
** END-OF-DEFINITION.
go_msglist->add( is_message = gs_msg ).
DO 6 TIMES.
CASE syst-index.
WHEN '1'.
mac_build_msg 'Command and Service Module (CSM)'
space space space 'I' '2'.
WHEN '2'.
mac_build_msg 'Lunar Module (LM)' space space space 'I' '2'.
WHEN '3'.
mac_build_msg 'Additional Module (M-1)'
space space space 'I' '2'.
WHEN '4'.
mac_build_msg 'Additional Module (M-2)'
space space space 'I' '2'.
WHEN '5'.
mac_build_msg 'Additional Module (M-3)'
space space space 'I' '2'.
WHEN '6'.
mac_build_msg 'Additional Module (M-4)'
space space space 'I' '2'.
WHEN OTHERS.
EXIT.
ENDCASE.
go_msglist->add( is_message = gs_msg ).
" recursive call of routine
PERFORM generate_messages_1 USING syst-index 'Modul' '3'.
ENDDO.
ENDFORM. " GENERATE_MESSAGES
*& Form GENERATE_MESSAGES_1
* text
* --> p1 text
* <-- p2 text
FORM generate_messages_1
USING
value(ud_index) TYPE i
value(ud_msgv) TYPE symsgv
value(ud_detlevel) TYPE ballevel.
* define local data
DATA:
ld_integer TYPE i,
ld_msgty TYPE symsgty,
ld_msgv TYPE symsgv,
ld_detlevel TYPE ballevel.
DO p_count TIMES.
WRITE syst-index TO ld_msgv NO-ZERO LEFT-JUSTIFIED.
IF ( ud_detlevel = '3' ).
CONCATENATE ud_msgv ld_msgv INTO ld_msgv
SEPARATED BY space.
ELSE.
CONCATENATE ud_msgv ld_msgv INTO ld_msgv
SEPARATED BY '.'.
ENDIF.
CONDENSE ld_msgv.
gd_msgv = ld_msgv.
IF ( ud_index = 1 ).
ld_integer = gif_random->get_random_int( 300 ).
IF ( ld_integer = 1 ).
ld_msgty = 'E'.
CONCATENATE gd_msgv 'failed' INTO gd_msgv SEPARATED BY ' -> '.
ELSEIF ( ld_integer BETWEEN 1 AND 10 ).
ld_msgty = 'W'.
CONCATENATE gd_msgv 'check(?)' INTO gd_msgv SEPARATED BY ' -> '.
ELSE.
ld_msgty = 'S'.
CONCATENATE gd_msgv 'OK' INTO gd_msgv SEPARATED BY ' -> '.
ENDIF.
ELSE.
ld_msgty = 'S'.
CONCATENATE gd_msgv 'OK' INTO gd_msgv SEPARATED BY ' -> '.
ENDIF.
mac_build_msg gd_msgv space space space ld_msgty ud_detlevel.
go_msglist->add( is_message = gs_msg ).
IF ( ud_detlevel < p_level ).
ld_detlevel = ud_detlevel + 1.
PERFORM generate_messages_1 USING ud_index ld_msgv ld_detlevel.
ENDIF.
ENDDO.
ENDFORM. " GENERATE_MESSAGES_1
*& Form DISPLAY_LOG
* text
* --> p1 text
* <-- p2 text
FORM display_log .
* define local data
DATA:
ld_handle TYPE balloghndl,
lt_log_handles TYPE bal_t_logh,
ls_profile TYPE bal_s_prof.
" Get log handle of collected message list
ld_handle = go_msglist->get_handle( ).
APPEND ld_handle TO lt_log_handles.
IF ( p_opt4 = 'X' ).
* get a display profile which describes how to display messages
CALL FUNCTION 'BAL_DSP_PROFILE_DETLEVEL_GET'
IMPORTING
e_s_display_profile = ls_profile. " tree & ALV list
ELSEIF ( p_opt5 = 'X' ).
* get standard profile to display one log
CALL FUNCTION 'BAL_DSP_PROFILE_SINGLE_LOG_GET'
IMPORTING
e_s_display_profile = ls_profile.
ELSE.
CALL FUNCTION 'BAL_DSP_PROFILE_NO_TREE_GET'
IMPORTING
e_s_display_profile = ls_profile.
ENDIF.
* set report to allow saving of variants
ls_profile-disvariant-report = sy-repid.
* when you use also other ALV lists in your report,
* please specify a handle to distinguish between the display
* variants of these different lists, e.g:
ls_profile-disvariant-handle = 'LOG'.
CALL FUNCTION 'BAL_DSP_LOG_DISPLAY'
EXPORTING
i_s_display_profile = ls_profile
i_t_log_handle = lt_log_handles
EXCEPTIONS
profile_inconsistent = 1
internal_error = 2
no_data_available = 3
no_authority = 4
OTHERS = 5.
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. " DISPLAY_LOG
Regards
Uwe -
Hello,
Please let me know, how to find the apex user table. I need to validate unique user based on the same, for which I am using below function,
DECLARE
VAL BOOLEAN;
BEGIN
VAL := APEX_UTIL.IS_USERNAME_UNIQUE(p_username =>
:P6_USERNAME );
END;
However in this case it is returning always 'FALSE', saying new user exist.
Kindly help me in fixing this issue.Hello Andre,
I am validating records from apex_workspace_apex_users, to check whether user is present or not,
While creating validation, I select SQL-> Not Exist and below query,
select 1 from apex_workspace_apex_users where user_name = :my_user.
If this record is present, it should throw an customised error, however it shows the error of "Unique key violation error...".
Can you please help me out whether while creating validation I should select (EXIST or NOT Exist). Since I am still confuse with the same.
Thanks,
Girish -
hi ,
I am developing a application. i want to upload image with person's details and save it to database. How to do this? I hv got tutorials for uploading image but want to know how to save it to database table along with person's details.
Thanks in advance.
Regards
Rajaram1.Go to transaction SE78.
2.Select tree menu: Form Graphics -> Stroed on Document Server -> Graphics General Graphics -> BMAP Bitmap Images
3.Select <IMPORT> to import bitmap image file to SAP. System will popup screen for input file information and target name.
4.Select <Tick> After you already input data. System will upload image and return message to tell you success or fail.
5.You can preview the picture that uploaded by select<print prv>
If u want to store the images and retrive it from the server corresponding to the person id then just save the image by person id and code it as per the requirement.
U can save ur images using se78 and also u can c it using TCODE AL11.By navigating thru the exact path u can get the images. -
Hello,
I'm a newbie to Oracle Portal and I'm currently working on a conference project. We already have database from last year. There we have user table and other tables. I have already created custom login portlet for users to login but I used portal SSO package. Here comes the tricky part: How can I link portal user table and my user table, so I would know the details of a user when he logs in.
The best solution would be if I could use my table instead of PORTAL30_SSO.WWSEC_PERSON table.
Can anybody help me please !?!
Tnx in advance.
Mitja.To handle using DIP, refer to the Oracle Identity Manager, Application Developers Guide. That gives recommendations on the ldap-ntfy package.
Handling the operation using OID plug-in will have performance impact on the ldap operations performed on OID. -
HOW CAN I ADD/UPDATE/INSERT IN A USER TABLE WITH MATRIX
Hi All,
I have one User table (Defined as No Object) and what i need to do is a form with a matrix to Add/Update/Delete data in my user table.
I already create the form and the matrix that already give me the user table data. But now i have several problems to solve.
First I try to add a new row but this new row get the data of the last row in the matrix. What i needed is a blank row to add new data in the user table.
Second, when i change data in matrix and do update in the form, sap show me the message that the operation is successfully done but the data in the user table in not updated.
I am trying to do one forma like whe can find in Setup-> General -> Freight.
Can anyone help me?
Best Regards,
Luis DuarteHi,
If ur dealing with a simple form like that U can as well use the direct table form, and just provide a FMS to auto matically fill the code and name. U can directly use the form by.. Tools-->UserDefined Windows
Or
Comming to ur problem.... when ur adding a new row clear the data sources so that u'll get a blank row.
And for update the best thing to do is delete all the records in the table and again insert all the records directly from the matrix.
Hope it helps,
Vasu Natari. -
How to save data for Binded Matrix in Sqlserver200(DB)
hai all,
i created a Form by using Udo form generator.
in that i bind the matrix with Userdatsources. its successfully binded to the matrix. but when i press "Add" Button the Sqlserver tables are not saved.
if i enter values manually without binding the udo matrix, all rows are getting saved in sqlserver successfully.
plz help me how to save the rows in the binded matrix to the tables in Sqlserver.
Regards,
Nagababu.Since you are using UserDataSources, you have to construct a function that loops through the columns, and by name and or alias you construct the INSERT and/or UPDATE query (assuming the destination table is User Defined).
Check out this link
Re: Matrix Processing
Hope it helps -
How to bind the data from user table into user report
Hi All,
Please assist me to bind the data from user table into user report. I did create an user table with data and create a user report template (using Query Print Layout). How can I display my data into report format which I created before? Any sample program or document I can refer?
Platform: SAPB1 2005A
Add On Language: VB.Net 2003
Thanks.
rgds
ERICHi Ibai,
Thanks for your feed back. I give you an example.
Let say now i wanna print employee list, so i will go
1. Main Menu -> Reports -> HR -> Employee List
2. Choose the Selection Criteria -> OK
3. Matrix will display (Employee List)
4. I can print the report click on print button
5. Printing report
My target
1. Main Menu -> Eric_SubMenu -> Employee List
2. Matrix will display (Employee List)
3. Print button
4. Print report
My problem
Now I would like to use my own report format. My own report format means I wanna add on my logo or do some customization within the employee report. So how I am going to do? I only able to display the employee list in matrix. How do I create a new report format and display it.
Thanks.
rgds
ERIC
Maybe you are looking for
-
Can the WLPI be used for a perl web site
We have a client, which has a perl(Apache/mod_perl) based web site. Cutomers submit orders on the web site and right now there is an order-processing system, but the client is looking for workflow/process product which will ease with all this order p
-
I can open new tab in safe mode
-
Can't find iCloud after 10.7.2 update
I upgraded successfully to 10.7.2, but no sign of iCloud in my pref-pane. Any ideas? Update says I have the most recent verions of everything (including iTunes). I just don't have the iCloud preference pane. Spotlight shows nothing either.
-
Hi, Can the HFM KMs within ODI be used for extracting Parent Currency data? Thanks, TN.
-
Action method called before the listener
hi all; i have a command_link as follows: <h:command_link action="#{someBean.someMethod}" > <f:parameter name="param" value="0"/> <h:output_text value="#{someBean.someProperty}"/> <f:action_listener type="com.myListener" /> </h:command