Thứ Sáu, 18 tháng 12, 2015

MS SQL Server Configuration Manager Error - Cannot open

Server SQL DEV sau vài lần Dump và Dead Blue Screen, cái SQL Server bị lỗi tè le, không open được.

Cái Server Configuration Manager bị lỗi "Cannot connect to WMI Provider...." thì làm theo link sau

http://tritoneco.com/2014/05/15/fix-sql-configuration-manager-cannot-connect-to-wmi-provider/

Trong đó chạy lệnh: mofcomp sqlmgmproviderxpsp2up.mof

********************************************************
Còn cái SSMS không thể connect (Attempted to read or write protected memory. This is often an indication that other memory is corrupt. (System.Data)), nhưng service vẫn chạy được, SAP vẫn connect và run ok. Tiếp tục workaround ...

Thứ Năm, 19 tháng 11, 2015

Update LMDB Components: CIM, CR Content...

Việc update này cũng xảy ra thường xuyên do các components này được release liên tục.
Hầu như mỗi lần check LMDB là thấy old, cần update...

Việc update này đã được đề cập trước đây, giờ làm lại cho nó mới, dễ tìm kiếm

All of things: read this note

669669 - Update of SAP System Component Repository in SLD


Thứ Tư, 18 tháng 11, 2015

SOLMAN Upgrade SPS with SUM Problems

Cuối tuần qua mình quyết định upgrade SPS cho cái Solution Manager (SOLMAN). Mọi việc giờ không làm thủ công nữa mà làm theo software của SAP hết.
Đầu tiên là dùng MOPz
Rồi dùng SUM để update

Dùng soft của SAP thì dù sao cũng toàn vẹn, bao quát hơn, tuy nhiên nếu có lỗi xảy ra thì cũng rất khó khắc phục, phải viện đến SAP Support.

Mà nếu incident mình để piority là normal thì có lẽ là dài cổ, hình như mỗi ngày SAP Support chỉ send 1 message với customer, nên nếu những vấn đề như connect, user... không suôn sẽ là coi như mất toi mấy ngày, trong khi mình đang upgrade bị lỗi mà phải chờ ngày nọ qua ngày kia, quả thật không dễ chịu chút nào.

Sau nhiều lần upgrade SPS từ ERP đến SOLMAN, mình có khá nhiều kinh nghiệm, nên giai đoạn đầu của SUM nó cũng có nhiều lỗi nhưng từ từ mình cũng fix được

Mãi đến Step 5.6 Execution, ABAP Phase MAIN_NEWBAS/XPRAS_AIMMRG thì bị lỗi, trên SCN cũng có nhiều lỗi, cũng có nhiều Notes cho lỗi ở phase này nhưng chúng không phù hợp và không áp dụng được với lỗi cụ thể của mình.

Lỗi lần này mình gặp phải là: SYNTAX_ERROR trong cái Program CL_AI_SC_REFRESH==============CP; Type "T_SERVER_ENH" is unknown

Báo hại cái lỗi này không xử được, phải kêu SAP Support và mất 5 ngày...

Cuối cùng Solution là Re-Implement cái SNote 2192846  (mặc dù check ở snote thì cái note này đã implemented successful)

OMG, để implement được cái Note đó không dễ vì SUM đang chạy giữa chừng, cái Instance chính thì down rồi, chỉ còn cái Shadow instance, nhưng nó bị lock, chỉ có thể log on vào với user DDIC

Mà user DDIC thì bị hạn chế, không cho implement SNote, vậy là phải unlock. Sau vụ này học thêm được cái việc Unlock system khi nó đang bị Lock do upgrade

Làm theo cái Note này nè: 
1901463 - How to unlock the SAP system to perform correction(s) during an upgrade.

Trong đó chủ yếu là:
  1. To unlock the SAP system, enter the following commands (here <transport_profile> or DEFAULT.TPP is the transport profile of the transport domain to which the system is connected): The system may be either the original SAP system or the shadow system, depending on which one the error occurred.
    • Original SAP system
      cd \<update directory>\abap\exe
      tp unlocksys <SAPSID> pf=..\var\DEFAULT.TPP
      tp unlock_eu <SAPSID> pf=..\var\DEFAULT.TPP
    • Shadow system
      cd \<update directory>\abap\bin
      SAPup unlockshd
  2. Log on to the SAP system or shadow system and correct the error.
  3. To lock the original SAP system or shadow system again, enter the
    following commands:
    • Original SAP system
      cd \<update directory>\abap\exe
      tp lock_eu <SAPSID> pf=..\var\DEFAULT.TPP
      tp locksys <SAPSID> pf=..\var\DEFAULT.TPP
    • Shadow system
      cd \<update directory>\abap\bin
      SAPup lockshd
Chú ý là phải gõ đúng chữ HOA/thường như vậy, nếu không thì không được - đã bị lỗi rồi, kinh nghiệm

***************************************************************************

Sau đó thì SUM chạy tiếp, nhưng lại bị lỗi không xóa được files vì bị open in DHCP client...
Vụ này đã có bài post trước đây, vào đó xem và xử luôn

Cuối cùng SUM chạy thành công. SOLMAN 7.1 đã được up to date



Thứ Hai, 2 tháng 11, 2015

SAP ERP Change Documents

Trong SAP ERP, một số các thay đổi về dữ liệu (table data) được lưu trữ và nó chính là "Change Documents) của từng ứng dụng (T-Code)
Về kỷ thuật, SAP active sẵn chức năng này ở một số chỗ (table define - SE11), đa phần như vậy là đủ, nếu ERP của bạn cần tracking chỗ khác thì phải active dạng customize, cần đăng ký key.

Danh sách tables được Activated: chạy / xem report này: RSTBHIST

Với SAP ECC, các change này được lưu trữ trong 2 tables: CHHDR và CHPOS
Tuy nhiên table CHPOS là cluster table nên không thể dùng Query được

Ở các TCode, có thể xem history được (menu Environment)

Nếu muốn có report Change documents linh động hơn thì bạn tự develop một Function Module bằng ABAP, nội dung thì cũng lấy dữ liệu từ 2 tables trên

====>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<=====
Cách đơn giãn nhất là chạy Report có sẵn: RSSCD100

=>> Điều quan trọng nhất là phải nhập tham số để giới hạn dữ liệu

Vì toàn bộ dữ liệu Log được lưu vào 2 tables này nên chúng rất lớn, cần filter càng mịn càng tốt nếu không report có thể chạy rất rất chậm hoặc timeout

=====> Và cuối cùng, kết quả của cái report là dạng thô, có thể không đẹp, bạn tự Export ra Excel và format lại

===>>>*****kết quả rất là đẹp


Thứ Tư, 14 tháng 10, 2015

Move TempDB & SQL DB Suspect

1. Move TempDB sang chỗ khác

a. Determine the logical file names of the tempdb database and their current location on the disk.
SELECT name, physical_name AS CurrentLocation
FROM sys.master_files
WHERE database_id = DB_ID(N'tempdb');
GO

b. Change the location of each file by using ALTER DATABASE.
USE master;
GO
ALTER DATABASE tempdb
MODIFY FILE (NAME = tempdev, FILENAME = 'E:\SQLData\tempdb.mdf');
GO
ALTER DATABASE tempdb
MODIFY FILE (NAME = templog, FILENAME = 'F:\SQLLog\templog.ldf');
GO

c. Stop and restart the instance of SQL Server.

d. Verify the file change.
SELECT name, physical_name AS CurrentLocation, state_desc
FROM sys.master_files
WHERE database_id = DB_ID(N'tempdb');

e. Delete the tempdb.mdf and templog.ldf files from the original location.

2. SQL DB bị lỗi Suspect, cần sửa lỗi DB

EXEC sp_resetstatus [YourDatabase];
ALTER DATABASE [YourDatabase] SET EMERGENCY
DBCC checkdb([YourDatabase])
ALTER DATABASE [YourDatabase] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC CheckDB ([YourDatabase], REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE [YourDatabase] SET MULTI_USER

Thứ Ba, 29 tháng 9, 2015

Connect Diagnostics Agent (DAA) to Solution Manager

Mặc dù gần đây SAP giới thiệu Diagnostics On Fly, nhưng mình vẫn thích dùng cái chuẩn hơn
Thỉnh thoảng lúc Setup, thông tin kết nối chưa chính xác hoặc cần thay đổi lại kết nối đến SOLMAN, làm theo note sau


  1. Login the Operating System with the Diagnostics Agent admin user <SID>ADM e.g. DAAADM.
  2. Stop the Diagnostics Agent.
  3. Go to the directory
    /usr/sap/<SID_AGT>/SMDA<Instance_Number>/script
  4. Run the command
    smdsetup managingconf hostname:"sapms://solman.full.qual.host.name" port:"81xx" user:"SMD_AGT" pwd:"xxxxxx"

    where xx is the Solution Manager SCS Instance Number 
  • If Solution Manager 7.01 use user SMD_ADMIN
  1. Start the Diagnostics Agent.
  2. Check if the SMDAgent is shown as connected in the Agent Administration UI of the Solution Manager system.
    • http://<solman_host>:<java_http_port>/smd/AgentAdmin
It's so cute.

Thứ Tư, 23 tháng 9, 2015

SAP ERP on Private Clouding with Ms Hyper-V

Vừa hoàn thành dự án upgrade OS và DB của SAP PRD lên Windows 2012R2 và SQL 2012, đồng thời ảo hóa (private clouding) phần cứng dựa trên Hyper-V.

Do có sự chuẩn bị tốt và hệ thống được maintain đầy đủ nên việc Setup lại hệ thống SAP PRD diễn ra suôn sẽ, no downtime, transparent với người sử dụng.

Cũng do đảm bảo tính transparent, không phải thay đổi connection của khoảng 200 end users mà mất 1 lần setup. Tức là quên chú ý tới cái System No và cái ASCS Message Server port.

Vậy, giữ lại IP nhưng đồng thời phải giữ lại cả Sys No và Message Port.

Khoảng 1 tuần qua người dùng cuối sử dụng bình thường mà hệ thống hoàn toàn trong sạch, thậm chí thấy performance còn tốt hơn lúc cũ.

Happy