Hướng dẫn về SAP ABAP BDC (Giao tiếp dữ liệu hàng loạt)

Mục lục:

Anonim

Giới thiệu về Nhập hàng loạt

Đầu vào theo lô thường được sử dụng để truyền dữ liệu từ hệ thống không phải R / 3 sang hệ thống R / 3 hoặc truyền dữ liệu giữa các hệ thống R / 3.
Đây là một kỹ thuật truyền dữ liệu cho phép bạn chuyển các tập dữ liệu tự động đến các màn hình thuộc các giao dịch và do đó vào hệ thống SAP. Nhập hàng loạt được kiểm soát bởi phiên nhập hàng loạt.

Trong hướng dẫn này, bạn sẽ học:

  • Giới thiệu về Nhập hàng loạt
  • Phương pháp nhập hàng loạt
  • Thủ tục nhập hàng loạt
  • Viết chương trình BDC
  • Tạo phiên nhập hàng loạt
  • Bộ ghi đầu vào theo lô
Phiên nhậphàng loạt Nhóm một loạt lệnh gọi giao dịch cùng với dữ liệu đầu vào và hành động của người dùng. Một phiên nhập hàng loạt có thể được sử dụng để thực hiện một giao dịch hộp thoại trong đầu vào hàng loạt, trong đó một số hoặc tất cả các màn hình được phiên xử lý. Các phiên nhập hàng loạt được lưu trữ trong cơ sở dữ liệu dưới dạng bảng cơ sở dữ liệu và có thể được sử dụng trong chương trình như các bảng nội bộ khi truy cập các giao dịch. Điểm cần lưu ý
  • BDI hoạt động bằng cách thực hiện các giao dịch SAP bình thường giống như người dùng nhưng nó thực hiện giao dịch tự động. Tất cả xác nhận màn hình và xác thực logic nghiệp vụ sẽ được thực hiện trong khi sử dụng Nhập dữ liệu theo lô.
  • Nó phù hợp để nhập số lượng lớn dữ liệu.
  • Không cần tương tác thủ công

Phương pháp nhập hàng loạt

SAP cung cấp hai phương pháp cơ bản để truyền dữ liệu kế thừa vào Hệ thống R / 3.

  1. Phương thức nhập hàng loạt cổ điển.
  2. Phương thức giao dịch cuộc gọi.

Phương pháp nhập theo lô cổ điển
Trong phương pháp này, chương trình ABAP / 4 đọc dữ liệu bên ngoài vào Hệ thống SAP và lưu trữ trong phiên nhập theo lô.
Sau khi tạo phiên, bạn có thể chạy phiên để thực hiện giao dịch SAP trong đó.
Phương pháp này sử dụng các mô-đun chức năng BDC_ OPEN, BDC_INSERT và BDC_CLOSE
Phiên nhập hàng loạt có thể được xử lý theo 3 cách

  1. Ở phía trước
  2. Trong nền
  3. Trong quá trình xử lý, hiển thị lỗi

Bạn nên xử lý các phiên nhập liệu hàng loạt ở nền trước hoặc sử dụng màn hình hiển thị lỗi nếu bạn muốn kiểm tra việc truyền dữ liệu.
Nếu bạn muốn thực hiện truyền dữ liệu hoặc kiểm tra hiệu suất của nó, bạn nên xử lý các phiên trong nền.
Những điểm cần lưu ý về Phương thức nhập theo lô cổ điển

  • Xử lý đồng bộ
  • Chuyển dữ liệu cho nhiều giao dịch.
  • Cập nhật cơ sở dữ liệu đồng bộ.
  • Nhật ký quy trình nhập hàng loạt được tạo cho mỗi phiên.
  • Phiên không thể được tạo song song.

Gọi phương thức giao dịch.

Trong phương pháp này, chương trình ABAP / 4 sử dụng câu lệnh CALL TRANSACTION USING để chạy một giao dịch SAP.
Toàn bộ quá trình nhập hàng loạt diễn ra trực tuyến trong chương trình

Điểm cần lưu ý:

  • Xử lý dữ liệu nhanh hơn
  • Xử lý không đồng bộ
  • Truyền dữ liệu cho một giao dịch duy nhất.
  • Không có nhật ký xử lý đầu vào hàng loạt nào được tạo.

Thủ tục nhập hàng loạt


Thông thường, bạn sẽ quan sát trình tự các bước sau để phát triển Đầu vào theo lô cho tổ chức của mình

  1. Phân tích dữ liệu kế thừa. Xác định cách dữ liệu được chuyển sẽ được ánh xạ vào Cấu trúc SAP. Cũng cần lưu ý các chuyển đổi loại dữ liệu hoặc độ dài dữ liệu cần thiết.
  2. Tạo cấu trúc dữ liệu SAP để sử dụng trong các chương trình xuất.
  3. Xuất dữ liệu sang tệp tuần tự. Lưu ý rằng định dạng ký tự được yêu cầu bởi các chương trình nhập hàng loạt SAP được xác định trước.
  4. Nếu các chương trình BDC do SAP cung cấp không được sử dụng, hãy viết mã chương trình nhập hàng loạt của riêng bạn. Chọn một phương pháp nhập hàng loạt thích hợp tùy theo tình hình.
  5. Xử lý dữ liệu và thêm nó vào Hệ thống SAP.
  6. Phân tích nhật ký quy trình. Đối với phương pháp GIAO DỊCH CUỘC GỌI, không có nhật ký thích hợp nào được tạo, hãy sử dụng các thông báo do chương trình của bạn thu thập.
  7. Từ kết quả phân tích quy trình, chỉnh sửa và xử lý lại các dữ liệu sai sót.

Viết chương trình BDC

Bạn có thể quan sát quy trình sau để viết chương trình BDC của mình

  1. Phân tích (các) giao dịch để xử lý dữ liệu đầu vào hàng loạt.
  2. Quyết định phương thức nhập hàng loạt để sử dụng.
  3. Đọc dữ liệu từ một tệp tuần tự
  4. Thực hiện chuyển đổi dữ liệu hoặc kiểm tra lỗi.
  5. Lưu trữ dữ liệu trong cấu trúc đầu vào theo lô, BDCDATA.
  6. Tạo phiên nhập theo lô để nhập theo lô cổ điển hoặc xử lý dữ liệu trực tiếp bằng câu lệnh CALL TRANSACTION USING.

Cấu trúc
dữ liệu đầu vào theo lô Khai báo cấu trúc dữ liệu đầu vào theo lô

DỮ LIỆU: BẮT ĐẦU OCCURS .BAO GỒM CẤU TRÚC BDCDATA.DỮ LIỆU: KẾT THÚC .
Tên trường Kiểu Chiều dài Sự miêu tả
CHƯƠNG TRÌNH CHAR số 8 Nhóm mô-đun
DYNPRO NUMC 4 Số Dynpro
DYNBEGIN CHAR 1 Bắt đầu một dynpro
FNAM CHAR 35 Tên trường
FVAL CHAR 80 Giá trị trường

Thứ tự của các trường trong dữ liệu cho một màn hình cụ thể không có ý nghĩa quan trọng.
Các điểm cần lưu ý

  • Trong khi điền Dữ liệu BDC, hãy đảm bảo rằng bạn xem xét cài đặt người dùng. Điều này đặc biệt thích hợp để điền vào các trường liên quan đến số (Như số lượng, số lượng). Chính cài đặt của người dùng sẽ quyết định ký tự nhóm cho các số là gì. Ví dụ: Một số năm mươi nghìn có thể được viết là 50.000,00 hoặc 50.000,00 dựa trên cài đặt của người dùng.
  • Cô đặc trường FVAL cho các trường số lượng và số lượng sao cho chúng được căn trái.
  • Lưu ý rằng tất cả các trường mà bạn đang điền thông qua BDC phải được coi là trường kiểu ký tự trong khi điền bảng Dữ liệu BDC.
  • Trong một số màn hình khi bạn đang điền các giá trị trong điều khiển bảng bằng BDC, bạn phải lưu ý số lượng hàng hiện diện trên một kích thước mặc định của màn hình và mã cho bao nhiêu hàng. Nếu bạn phải điền nhiều hàng hơn thì bạn phải viết mã cho chức năng "Trang xuống" như cách bạn làm khi điền điều khiển bảng theo cách thủ công.
  • Số dòng sẽ xuất hiện trong trường hợp trên sẽ khác nhau dựa trên kích thước màn hình mà người dùng sử dụng. Vì vậy, hãy luôn mã cho kích thước màn hình tiêu chuẩn và làm cho BDC của bạn luôn hoạt động ở kích thước màn hình tiêu chuẩn bất kể người dùng giữ kích thước màn hình của mình như thế nào.

Tạo phiên nhập hàng loạt

  1. Mở phiên phiên nhập hàng loạt bằng cách sử dụng mô-đun chức năng BDC_OPEN_GROUP.
  2. Đối với mỗi giao dịch trong phiên:
    • Điền vào BDCDATA với các giá trị cho tất cả các màn hình và trường được xử lý trong giao dịch.
    • Chuyển giao dịch sang phiên với BDC_INSERT.
  3. Đóng phiên nhập hàng loạt bằng BDC_CLOSE_GROUP

Bộ ghi đầu vào theo lô

Trình ghi đầu vào theo lô (Hệ thống> Dịch vụ> Đầu vào theo lô> Trình ghi) ghi lại các giao dịch được nhập theo cách thủ công và tạo một phiên nhập theo lô có thể được thực hiện sau này bằng cách sử dụng SM35.

  • Khởi động trình ghi đầu vào hàng loạt bằng cách chọn nút Ghi từ màn hình ban đầu nhập hàng loạt.
  • Tên bản ghi là tên do người dùng xác định và có thể khớp với tên phiên nhập hàng loạt có thể được tạo từ bản ghi.
  • Nhập một giao dịch SAP và bắt đầu đăng giao dịch.
  • Sau khi hoàn tất việc đăng giao dịch SAP, bạn chọn Nhận giao dịch và Lưu để kết thúc ghi hoặc Giao dịch tiếp theo và đăng giao dịch khác.
  • Khi bạn đã lưu bản ghi, bạn có thể tạo phiên nhập hàng loạt từ bản ghi và / hoặc tạo chương trình nhập hàng loạt từ bản ghi.
  • Phiên nhập hàng loạt bạn đã tạo hiện có thể được phân tích giống như bất kỳ phiên nhập liệu hàng loạt nào khác.
  • Chương trình được tạo bởi chức năng của bộ ghi đầu vào hàng loạt là một công cụ mạnh mẽ cho người lập trình giao diện dữ liệu. Nó cung cấp một cơ sở vững chắc sau đó có thể được thay đổi theo yêu cầu của khách hàng.