Wednesday 27 March 2024

How to define the maximum file size in SAP Content Server 7.5


How to define the maximum file size in SAP Content Server 7.5

"There is a need to adjust the maximum file size in SAP Content Server 7.5 (and above) to a desired higher or lower limit."

"The maximum file size is determined by the profile parameter icm/HTTP/max_request_size_KB."

The profile configuration file can be found in the DIR_PROFILE of the new installation, for example, /usr/sap/<SID>/SYS/profile.

The parameter can also be used to set a smaller limit if desired.

Important Note:

Please be aware that adjusting the upload limit for file size will impact all applications.

Any files uploaded prior to the limit adjustment, which exceed the new limit, will become inaccessible.
For instance, if the limit is set at 150MB and a 200MB file was uploaded before the adjustment, it will no longer be accessible.




Reference :

SAP Snote
SAP help

 

Wednesday 20 March 2024

How to schedule a database/transaction log backup for SAP JAVA Stack system - SAP ASE

 


 You can schedule regular database/transaction log backups for SAP Java Stack systems running on SAP on ASE (with no possibility to use an ABAP stack system to manage that from DBACockpit).

Environment:

SAP Adaptive Server Enterprise (ASE) 16.0

Pre-requisites:

  1.  Job Scheduler database is installed and up and running
  2.  Backup Server is up and running
You can schedule automatic dump jobs using AMC, under Backup & Recovery > Database Dumps > Create option.

If you want to schedule dump manually, you may proceed with the following steps:

Connect to ASE using isql command 
sybadm> isql -Usapsa -PXXXX -S SMJ -X

Create a dump configuration if required. The advantage of the dump configuration is that you can reuse for others dumps.

sybadm> use master
sybadm> go

sybadm> sp_config_dump '<configname>',@stripe_dir='</path/to/backup/location>',@num_stripes='<#stripes>',@retry='1',@compression = '<compression level>'
sybadm>go

Example:  sp_config_dump 'SMJDB',@stripe_dir='</backup/Backup/SOL/SMJ',@num_stripes='1',@retry='1',@compression = '101'  

Create a scheduled job using sp_sjobcreate stored proc

Command syntax: sp_sjobcreate 

sybadm> use sybmgmtdb
sybadm> go

Create database dump syntax:
 sybadm> sp_sjobcreate @name='<schedulename>',@option="jname=<jobname>,jdesc=<job description>,jcmd=dump database <dbname> using config = '<configname>',days=<day1:day2..>,starttime=<hh:mm>"

sybadm> go

Example create database dump with "SMJDB" database name:

sybadm> sp_sjobcreate @name='DMP_SMJDB_SCH',@option="jname=DMP_SMJDB_JOB,jdesc=Nightly SMJDB dump at 22hrs,jcmd=dump database smjdb using config = 'dmpcfg_db',days=Monday:Tuesday:Wednesday:Thursday:Friday,starttime=10:00pm"
 
sybadm> go

 Create transaction log dump with "SMJLOG" database name:

 sybadm> sp_sjobcreate @name='DMPTX_SMJLOG_SCH',@option="jname=DMPTX_SMJLOG_JOB,jdesc=Hourly SMJLOG tran Dumps,jcmd=dump tran smjlog using config = 'dmpcfg_tx',starttime=06:00am,endtime=09:00pm,repeats=1hour,sproperties=continuous_run"
 
sybadm> go 

To check the scheduled job:

smjadm> sp_sjobhelp @name='<schedulename>'

smjadm> go





Reference:

  • SAP Snote
  • SAP help

Saturday 16 March 2024

How to reduce the number of entries of table SOFFCONT1?

 


How to reduce the number of entries of table SOFFCONT1?

     Table SOFFCONT1 is the database table used by Business Communication Services (SAPoffice, SAPconnect, GOS) and KPRO to store content related to storage category SOFFDB, that contains the attachments from all messages that are sent from SAP (fax, email etc..) therefore it will contain many entries.

what kind of objects are stored in SOFFCONT1 table?

SAPoffice documents are created in all of the above scenarios. The document contents are stored in two different ways:

  • The document is not stored using the Knowledge Provider (KPRO).

The document is a text document and is not stored using the KPRO. The contents of the document are displayed directly in Table SOC3. The indicator that shows whether a document has been stored using KPRO is found in table SOOD-EXTCT.

  • The document is stored using the knowledge provider.

Binary documents are stored using the KPRO. The contents of the document are managed by the KPRO. For this purpose, it recognizes a Logical Object ID (LOIO) and a Physical Object ID (PHIO). The SAPoffice component accesses this using the LOIO, which is stored in table SOC3.

In the standard settings, the KPRO stores the SAPoffice data in the database table SOFFCONT1. You can also select an external content server or an archive system as somewhere to store the documents. The storage location is determined using the content repository 'SOFFDB'. You can check the storage location for the SAPoffice data in your system using Transaction 'OAC0'.

Note: It is not possible to determine the storage location for individual document types. It is also not possible to determine in which scenario the document was created. You can only determine whether SAPoffice documents are stored in the ' SOFFCONT1' database table using the KPRO or in an external system.

Further queries:

  • Which document types are stored using the KPRO?
  • all documents that are transferred to a SAPoffice interface in binary form,
  • external documents (type EXT), providing that they are not text documents
  • OTF documents.
  • ALI documents.
  • Can I determine whether a document is stored in the KPRO?
  • (Information for technical support) 
The corresponding document in table SOOD contains an indicator for the knowledge provider. The SOOD-EXTCT field may contain the following values:


Is it possible to store the GOS attachment list in a particular way?

No, even the attachments in the GOS attachment list are stored as SAPoffice documents.

Here are 2 ways to have less entries in SOFFCONT1, using the SAPoffice reorganization report or relocating data from table SOFFCONT1 to a content server:

1. SAPoffice Reorganization Report:

Use the SAPoffice reorganization process to delete entries in SOFFCONT1 that are no longer referenced by any User/folder, etc. Please note that the reorganization report RSBCS_REORG will only delete the entries from the SOFFCONT1 table, the size in the DB should be reduced using the database tool.

2. Content Server:

To store documents in an content server instead of SOFFCONT1 table, set a new storage category for DocuClass SOFFPHIO in transaction SKPR08 which is pointing to the Storage Category in transaction OACT which is pointing to the content repository in OAC0 which resides in the external content server you want to use.

Now new documents will be stored in the content server and existing documents in the system will remain in SOFFCONT1, KPRO will know where a file is stored based on the Storage Category (i.e. in SOFFCON1 or content server) and so a file will be displayed without an issue no matter its storage location.

You can then use the report RSIRPIRL or RSGOS_RELOCATE_ATTA to physically move the existing documents from SOFFCONT1 to a content server.

The report RSGOS_RELOCATE_ATTA can relocate GOS attachments only, and it supports the scenarios where only GOS attachments should be relocated.

The report RSGOS_RELOCATE_ATTA exist only as of SAP Basis Release 740. However, this is only an optional step as the Knowledge Provider still knows whether a document is stored in SOFFCONT1 or on the external content server and can access documents from both.

  • Report RSIRPIRL relocates all objects from SOFFCONT1 to a content server.
  • Report RSGOS_RELOCATE_ATTA does NOT replace report RSIRPIRL.
  • Regarding how to use report RSIRPIRL.

Please keep in mind, that after having less entries in table SOFFCONT1 (either due to SAPoffice reorganization or due to relocation), the size of table will not necessarily be reduced automatically as most likely a database reorganization or table compression is required after removing so many records. It is a database question (and depends what kind of database is used) how to adjust the table size after entries are removed from a table.




Reference:

Wednesday 6 March 2024

Artificial Intelligence in SAP Solutions



Artificial Intelligence in SAP Solutions:

Artificial Intelligence adoption continues growing

                      The ability to think and learn in humans is called natural intelligence, therefore in machines, we call it artificial intelligence (AI). There are two primary types of AI: traditional and generative. Traditional AI can recognize patterns, but generative AI creates new patterns based on the recognized historical patterns and any additional data that's provided. Machine learning is a subset of AI, focused on teaching computers to learn from data and improve with experience, instead of being explicitly programmed to do so. In machine learning, algorithms are trained to find patterns and correlations in large data sets, and to make the best decisions and predictions based on these analyses. Machine learning applications improve with use and become more accurate the more data they have access to.



 

Saturday 2 March 2024

General Concepts of Cloud Computing

 


General Concepts of Cloud Computing.

Introduction to Cloud Computing

             Cloud computing is the delivery of applications, platforms, data storage, operating systems, and other computing resources over the Internet. In the cloud model, you pay a regular subscription fee to consume certain services from a third party provider. 
              
            This is similar to how you consume services in your home such as water and electricity. You pay the utility provider on a monthly or quarterly basis, and the provider is responsible for delivering services to you, and maintaining the infrastructure necessary to deliver those services (public water pipes, power lines). If there is an issue, you would contact the service provider for a resolution. For example, if there is a power outage due to a thunderstorm, the utility provider is responsible for troubleshooting and taking the necessary steps to resolve the issue and reinstate your service.


This is a stark contrast to the traditional on-premise model, where the customer is responsible for purchasing and maintaining the server(s) where the software is installed, and the software itself. This includes setting up redundancies to back up data, and security measures to protect both the physical servers on site, and the software in the virtual space. For example, if the customer's server crashes and needs to be rebooted, an employee within the organization must handle this task, and all employees using the software wouldn't be able to access the system while it's down. What if data was lost during the crash? For a large organization, it may be feasible to budget for a team of people to maintain the servers, software, redundancies, and security, but small and mid-size organizations need a cost-effective solution where they know their data is safe and their applications are accessible when they need them. Large organizations also look to cloud software to help them reduce the cost of maintenance while gaining the benefits described in the below:

Elasticity:
              Increase or decrease the storage space and computing power you need to meet fluctuating workload requirements.

Affordability:
            Minimize hardware and IT (Information Technology) department costs; only pay for what you use.

Availability:
             24 x 7 x 365 system access from anywhere, on any device.

Security:
             Improve compliance, protect data, and mitigate risk with continuous security updates from the cloud provider.

Innovation:
            Rapidly adopt new technologies to innovate faster, while simplifying the IT department's maintenance responsibilities.

Agility:
         Set-up cloud system(s) to quickly react to changing market conditions and business needs.











Reference:(Educational Purpose)
  1. Learing.sap.com


Friday 1 March 2024

Getting Logon pop-up in transaction CSADMIN - SAP Content Server 750 and higher

 


Getting Logon pop-up in transaction CSADMIN - SAP Content Server 750 and higher:


When accessing transaction CSADMIN through transaction OAC0, a logon pop-up comes up:



Why its happen at the time of SAP Content Server 750 or higher installation, the option "AdminSecurity" was enabled by default on SWPM.


Admin Security is enabled by default (if not explicitly deactivated during installation). When it is enabled, authentication is required for some maintenance tasks in CSADMIN.
This is a security measure to prevent unauthorized administration access to Content Repositories through CSADMIN transaction.
The '<sid>adm' user must be used with the global password that you specified during the installation.

If necessary to disable the logon pop-up, follow these instructions.

For a new installation:
  • When installing SAP Content Server 750, uncheck the 'Enable AdminSecurity' box in the Software Provisioning Manager.
For an existing installation:
  • AdminSecurity is now controlled by parameter icm/HTTP/auth_0.To disable this authentication, edit the SAP Content Server profile on path /usr/sap/<SID>/SYS/profile/<SID>_C<Ins.no)_<hostname>.
Add the "#" character to comment the whole line of parameter icm/HTTP/auth_0.

See the example:


Reference:
  1. help.sap.com
  2. Sap snote




Wednesday 28 February 2024

SAP Memory Management - Monitoring

 


SAP Memory Management - Monitoring:

The monitoring tools allow you to monitor your running ABAP system. The following tools are suitable for monitoring 

Memory Tune Summary (ST02) Displays a snapshot of memory consumption on a specific application server instance (AS instance). A snapshot of the current consumption (as a percentage of the total amount and as an absolute value in kilobytes) and of the maximum consumption of various memory types is displayed. 

• To display the memory quotas for the different work process types, choose Goto -> Current Local Data -> SAP Memory - > Quotas.

• You can monitor the memory consumption in the internal sessions of a user. To do this, choose Goto-> Current Local Data -> SAP Memory -> Mode List. In the table, you can see how much-extended memory (EM used) and PRIV memory (HEAP) is being used in the internal sessions of the user on this AS instance

• You can display the current configuration in SAP Memory Management, by choosing Current Parameters on the screen or by choosing Goto -> Profile Parameters -> Current. The table shows the profile parameters and their current values. 

Operating System Monitor (ST06) Here you can monitor the swapping of memory pages and the available swap space in the operating system. 

• Report RSMEMORY You can use the report for test purposes. 

• Program sappfpar You can use this program to check the configuration of SAP Memory  Management in an AS instance profile via OS level. The program generates a list. Under swap space requirements estimated you can see the size of the SAP shared memory (shared memory) of the PRIV memory (processes), and of the extended memory that is required for this profile. Beneath this you can see the minimum requirement of swap space (Total, minimum requirement), the maximum worst-case requirement of PRIV memory (Process local heaps, worst case), and of swap space (Total, worst case requirements). 

CCMS Monitoring (RZ20) You use the Alert Monitor in the Computing Center Management System (CCMS) to monitor the entire system, including memory resources.

User Overview (SM04) In the user overview you can see all active users on a specific application server (AS instance) or across the whole system. Here you can find information about the consumption of extended segments memory (ES), extended memory (EM), and PRIV memory

Work Process Overview (SM50) In the work  process overview (Transaction SM50) you can see how much memory a single work process consumes, and monitor how many work processes are running in PRIV mode. This is an indication of an increased consumption of PRIV memory.  








Reference:
  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin

Tuesday 27 February 2024

List of key SAP Memory parameters

 


List of key SAP Memory parameters:


PHYS MEMSIZE: Specifies the size of the main memory of the host on which AS ABAP is running .

em/initial size_MB: Specifies the total size of the extended memory (EM). The value is derived from the size of the physical main memory. 

EM/TOTAL SIZE MB: Controls the total size of the EM for the implementation of 

shared memory segments (SHM segments). 

em/max size MB: Specifies the maximum size of the dynamically extendable EM 

em/global_area_MB: Specifies the size of the global extended memory (EG) 

abap/heap_area_dia: This value specifies how much PRIV memory can be allocated for a user context by a single dialog work process. The aim is to limit the maximum size of user contexts so that one single user cannot occupy the entire memory available. 

abap/heap area_nondia: Specifies how much PRIV memory, a non-dialog work process(background, update, the system and print processes) can allocate for a user context. The aim is to limit the maximum size of user contexts so that one single user cannot occupy the entire memory available. 

abap/heap_area_total: Specifies how much PRIV memory dialog and non-dialog work processes can allocate for user contexts. 

abap/heaplimit: This value specifies the amount of PRIV memory that, if exceeded,automatically restarts a work process after completion of the current transaction step. A bottleneck in the swap space should be prevented by using an automatic restart (as seldom as possible). 

em/proc_max_size MB: Specifies the maximum amount of PROC memory all work processes together can use. The value 0 means that there is no limit to the PROC memory 

rdisp/wppriv_max no: The value specifies the maximum number of work processes that are allowed to be in PRIV mode. 

rdisp/max priv time: This parameter value specifies the maximum time spent by a work process in PRIV mode. 

ztta/roll_extension: Specifies how much EM can be assigned to a user session (usercontext). The EM quota applies both to dialog work processes and to non-dialog work processes. The current parameter value is the default value for ztta/roll_extension_dia and ztta/roll_extension nondia. ztta/roll_extension only takes effect if its value is lower than em/initial size MB.



Reference:

  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin

SAP Memory Area Allocation Sequence

 


SAP Memory Area Allocation Sequence:

SAP Memory area allocation sequence is different for dialog and non-dialog work processes.

SAP Dialog Work Process 
            SAP Dialog work processes are responsible for processing user requests in an ABAP system. The user context is switched frequently, which is only possible in extended memory (EM). For this reason, dialog work processes first allocate a memory area from the EM. The EM is available to work 
processes until the maximum EM quota that can be occupied for dialog work processes is 
reached. This limit is set with profile parameter ztta/roll_extension_dia



Once the EM quota is reached, dialog work processes allocate a memory area from the PRIV 
memory (HEAP). If the quota for the PRIV memory (abap/heap_area dia) is reached, the 
running ABAP program is terminated and an ABAP short dump is created. The consumption 
limits of memory (EM or heap) in SAP Memory Management is a protection mechanism in the 
ABAP system that is intended to prevent individual user sessions or programs from using up the entire 
memory. 

Non-Dialog Work Process: 
                   
                       In non-dialog work processes (such as background, update, or spool work processes), the user context is not switched, which is why these work processes are allocated PRIV memory first. 
PRIV memory is available to the work process until the PRIV memory quota that a non-dialog 
work process can allocate for a user context is reached. This quota is defined in the profile 
parameter abap/heap_area_nondia.



If the PRIV memory quota for non-dialog work processes is exceeded, the work. process of this 
type allocates a memory area from the EM. If the EM quota (ztta/roll_extension nondia) is 
exceeded, the running ABAP program is terminated, and a  create short dump.





Reference:
  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin







Monday 26 February 2024

SAP PROC Memory

 


SAP PROC Memory.

                 SAP PROC memory does not contain any user-specific data, but, like PRIV memory, is specific to the local process. Unlike the PRIV memory, the PROC memory is used for data that each work process requires, regardless of the user session, eg. temporary, heap buffer areas. Allocation of 
PROC memory does not lead to an exclusive reservation of the process for a specific user 
context. With profile parameter em/proc_max size MB, you define the maximum amount of 
PROC memory all work processes are allowed to occupy 




Reference:

  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin

SAP PRIV Memory (HEAP)

 


SAP PRIV Memory (HEAP):

    The SAP PRIV memory or HEAP memory contains data from the user context and is bound to a work process within a user session that is being executed. When a work process allocates PRIV memory, it cannot process any other user context. When the memory area is allocated from the PRIV memory, the work process is reserved for processing the current user context until the 
context releases the work process when the user session ends. Up to this time point, no other user context can be mapped to the work process: 

SAP HEAP memory is configured with the help of the below parameters. 
  1. abap/heap_area_dia  
  2. abap/heap_area_nondia  
  3. abap/heap_area_total 



Reference:

  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin

Friday 23 February 2024

SAP Global Extended Memory (EG)

 


SAP Global Extended Memory (EG):
 
The v is part of the extended memory (EM). It contains user specific data and can be accessed by all work processes. The EG is a part of the EM, which is used for multiprocessing. The EG contains data that does not belong to a specific user session. This may be data used for example for monitoring and statistics, table buffers of the database interface (DBI), or ABAP-shared objects that all work processes have access to independently of the user session. You set the size of the EG in profile parameter 
em/global_area_MB. 



Reference:

  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin

SAP Extended Memory (EM)

 


SAP Extended Memory (EM):

SAP Extended memory (EM) is the core of SAP Memory Management. The majority of data for a 
user session (user context), which different work processes access when processing requests, is 
stored here. These are mainly dialog work processes since this is where most user interaction 
with the system is processed. You set the size of the EM in profile parameter 
em/initial_size_MB. As of the release of SAP NetWeaver 7.4, the roll area was removed. 
Extended memory (EM) is now the actual memory for the application data. For more 
information, see SAP Note 2085980





Reference:
  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin


Thursday 22 February 2024

SAP Extended Segments Memory (ES)

 


SAP Extended Segments Memory (ES):

              SAP Extended segment memory (ES) forms the basis for extended memory (EM) and global extended memory (EG). The ES consists of a limited number of segments located next to each other and can be accessed by all work processes of an application server instance (AS instance). An ES segment consists of one or more ES blocks that are all the same size. The size of the blocks is configured in the profile parameter em/blocksize KB. The default value is 4 MB. When a user context requests a memory area from the EM, one or more blocks are allocated to the EM from the ES The ES blocks are stored in specific shared memory segments in the operating system. These segments are exclusively reserved for ES memory. How ES memory and therefore EM memory are implemented depends on the underlying operating system. 




Reference:

  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin

SAP Shared Memory (SHM)

 



SAP Shared Memory (SHM):

SAP shared memory is a shared memory resource in SAP Memory Management in which various buffer data are stored. SAP SHM provides a shared memory that is shared by all work processes. It is based directly on the shared memory of the operating system. It comprises SAP SHM segments that are divided into local and global segments. 

Local SAP SHM segments can be used by all work processes of one application server instance (AS instance). Global SAP SHM segments can be used by all work processes of all AS instances running on the same host The size of the shared memory pools is defined in the parameter ipc/shm_psize_<xxx>. The parameter is valid on all operating systems. However, the creation of the pools is heavily dependent on the operating system.




Reference:

  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin

Wednesday 21 February 2024

SAP Memory Types in SAP Memory Management

 


SAP Memory Types in SAP Memory Management:

The below two main types of memory areas in SAP 

  1. Extended Memory (EM) 
  2. Heap Memory 
also go little deeper, then we have in total 6 memory areas 

  1. SAP Shared Memory (SHM) 
  2. Extended Segments Memory (ES) 
  3. Extended Memory (EM) 
  4. Global Extended Memory (EG) 
  5. PRIV Memory (HEAP) 
  6. PROC Memory 








Reference:
  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin

SAP Memory Management

 



SAP Memory Management:
                        
                      While working on SAP ABAP systems, we often facing memory-related "DUMPS" error in "ST22" or some time see work processes go in "PRIV mode" when checked in t-code "SM50". We wondering why such things happen in running in the SAP system and how to handle it. To understand this, we first need to understand what "SAP memory" is and how "SAP Memory Management" is done. So let’s get start to know the basic concept of SAP Memory management.


What is SAP Memory:
                    
                SAP memory is a memory area to which all main sessions within an "SAP GUI" have access. You can use SAP memory either to pass data from one program to another within a session or to 
pass data from one session to another.

Workflow for SAP Memory:

               When a user logon to an application server instance (AS instance) in the ABAP system, a user session is opened. Within a session, the user sends a request to Application Server ABAP (ASABAP). An ABAP program is started that is executed by multiple work processes. A separate memory area is assigned to each user session. 

              To run an ABAP program within a user session (internal session), the work process allocates memory, which contains user data (user context), as well as program data. Depending on the type of data, it is located in different memory areas. SAP Memory Management decides when and in what order a work process allocates specific memory areas. The order of memory allocation depends on the work process type (dialog or non-dialog) and on the underlying operating system.

Types of SAP Memory 

On a very high level, there are mainly two types of memory areas in SAP 
  1.  Extended Memory (EM) 
  2.  Heap Memory 
If we go a little deeper, then we have in total 6 memory areas 
  1. SAP Shared Memory (SHM) 
  2. Extended Segments Memory (ES) 
  3. Extended Memory (EM) 
  4. Global Extended Memory (EG) 
  5. PRIV Memory (HEAP) 
  6. PROC Memory 

We will see upcoming post IN details about SAP Memory types.



Reference:
  1. help.sap.com 
  2. SAP Notes 
  3. Linkedin