sap后台作业管理:

后台作业,主要用于运行需要处理大量数据,对交互没有要求的程序。个人认为,简单的创建,配置和监控后台作业没有什么难度。后台作业管理最为困难的解决方案的取舍,系统负载的调控。失控的后台作业,往往对系统带来灾难性的性能问题,也会导致权限管理的风险,结果是得不偿失,而且可能导致流程混乱。所以个人认为,要创建一个周期性的后台作业之前,首先应该慎重分析。比方说,一个已经明显偏向 OLAP类型的报表,如果能够用BI去实现,为什么还要坚持在生产系统去跑长时间的后台作业?这极有可能是一种严重的重复运行的性能问题。再比方说,用户获得授权随意创建后台作业,结果导致后台作业失控,在业务繁忙的时候,因为大量的后台作业导致整个系统的停顿,会造成实实在在的经济损失。再比如说,后台作业安排的不合理,可能耗资源的和重要的后台作业直接或者间接安排到了同一个时间段,那么必然会影响流程的运作。

详细解释一下sap得后台作业。 sap得后台作业的启动方式可以是定时地,也是可以是事件触发的。后台作业里面包含一个或者多个步骤,每一个步骤则包含调用的程序,外部shell命令以及外部程序,也包含了调用者以及变量,还可以定义打印参数。后台作业的名字往往需要遵循一定的命名规则,用来明确该后台作业的重要程度,启动方式,作用等等。我们往往通过SM36去创建后台作业,(也可以通过SM36去查看SAP标准后台作业),通过SM37去监控和管理后台作业。

后台作业有Scheduled, Released, Ready, Active, Finished, Canceled六种状态。另外还可以指定执行的服务器组(后台job执行的服务器组可以用sm61来配置)。 Scheduled状态的job是创建了但是还没有release,这种状态的job是不会跑的。Released状态的job在启动条件满足后会启动,Ready就是启动条件满足后,系统开始为该job分配但尚未分配合适的后台进程的一个中间状态,Active代表这个job正在运行当中,换言之,其相应的后台进程正在运行job某一个step得程序;Finished代表job得所有step都成功的完成了。Canceled代表job在某一个step得运行过程中异常中止了。

sap job得信息存在一系列的表TBTC*里面。有的时候,某个job对应的进程中止了,但是表里面的状态信息仍然没有更新,会出现job是active状态,而实际没有进程在跑的情况,那么,我们只需要check status,就可以手动修正表里面的状态信息。

如果要分析job cancel得原因,应该检查job log,往往job得step都是跑的是abap程序,所以,job cancel得时候常伴随着dump产生,这个时候,双击job log的条目,可以跳转对应的dump。另外,有的时候,因为进程被中止导致的job cancel没有被写入日志,需要结合system log去分析。job log是保存在\usr\sap\SID\SYS\global日志文件<client nr>JOBLOG中的,在某些特定的情况下,日志文件访问问题会导致所有的job cancel,在DI上出现这种问题的时候,据说可能是NFS不稳定,这个我还不确定。

触发Event 基本本是function module BP_EVENT_RAISE或者sapevt.exe。

sap打印管理:

完整SAP打印过程基本上是: 1 选择打印的文档,创建spool request(printer-independent); 2 如果是立即打印,则根据output device创建output request(printer-dependent); 3 output request被移交给sap print process处理 4 sap print process将打印数据转换成打印机可识别的格式移交给操作系统打印管理器。

在adm里面强调了一点,就是如果操作系统层面打印机不可用,对sap来说该打印机也不可用。 此外,sap打印机的access method,主要和操作系统差异(NT,Unix)以及SAP print process和os spooler所在服务器有关. Access Method: F类型是针对用户端为windows平台,具体是通过sap spool->saplpd->windows spool实现的。 L(调用unix shell command lp/lpr)和C(调用windows API)类型分别对应unix和winodws平台的应用服务器得local类型,local类型的意思是sap print process和os spool在同一物理服务器上。 U和S分别针对unix平台和windows平台的远程打印,远程打印的意思是sap print process和os spooler不在同一服务器。需要说明的是,s类型还是需要调用打印服务器端的saplpd.

下面大致说明一下简单的sap 打印机配置过程(oms得复杂类型配置暂且略过,我还没有做过) 一般我们配置的打印机(output device)多为L类型的。 SPAD创建打印机 output device:大小写区分 device type:选择对应的型号,如果没有默认的,首先去sap官网下载最新的device type导入,如果还没有,就去供应商官网查找。sapnote 8928 delievery classs: 打印机用standard printer authorization group: 打印机权限管理,不需要可以略过(我没有配置过) Model,location, Message都是描述性字段,根据各公司的命名规则去填写,以便实际管理 lock printer in SAP System: 是否在sap系统锁定该打印机?当然不了 Host Acces method:L Host Printer Name: 打印机名称(这个字段将用于lp/lpr命令) Host Name:打印服务器机器名(比如我的打印机安装在sidhau上,那么这一栏自然就是sidhau) 一般为了性能良好,都将Do not query Host Spooler for output status打上勾。 其他默认。

关于F类型打印机,下面贴一个SDN关于PDF1打印机配置的BLOG。这个包含了F类型打印机配置,同时给出了不用第三方软件提供将报表转pdf格式文件得解决方案。已测试通过。 请注意打印配置,实际上不同类型的打印机,比如L和C得,代表着不同的接口。L类型打印机,sap传递给os得是lp/lpr命令,C类型的,则是调用windows平台的saplpd。 https://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/1523

对于spool得维护和监控也是相当重要的。需要定期清理旧的spool request和output request. sap有标准的后台作业SAP_REORG_SPOOL( rspo1041)和SAP_CHECK_SPOOL(rspo1043)详细信息可以查看sap note 130978和98065

sap后台作业管理/sap打印管理的更多相关文章

  1. SAP MM模块之批次管理

    1.Batch的定义:Batch is a quantity any drug produced during a given cycle of manufacture. The essence of ...

  2. SAP 财务模块 FI-TV 差旅管理

    SAP 财务模块 FI-TV 差旅管理 Travel Management差旅管理事务码              描述PRT3      Trip Costs: Maintain Postings ...

  3. 【ABAP系列】SAP Smartforms 设置纸张打印格式

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP Smartforms 设 ...

  4. K2 BPM + SAP,实现全方面管理企业

    K2作为专业的BPM.工作流管理平台供应商,面向庞大的SAP用户群体,除了提供产品化的SAP集成工具「K2 connect」产品之外,更拥有一套得到众多客户验证的集成解决方案. 此方案可供SAP用户或 ...

  5. SAP MM 无价值物料管理的一种实现思路

    SAP MM 无价值物料管理的一种实现思路 笔者所在的项目,客户工厂处于先期试生产阶段,尚未开始大规模的商业化生产,但是这并不影响客户集团总部的SAP项目实施.笔者于7月初加入该工厂的第2期SAP项目 ...

  6. 【ABAP系列】SAP 后台JOB如何DEBUG

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP 后台JOB如何DEBUG ...

  7. 实现所有SAP设备打印机并行打印

    SAP版本:ECC 6.0 701 1.如何实现所有SAP设备打印机并行打印? I.通过事务码:SPAD,进入假脱机管理初始屏幕.点击左上角的菜单中 配置(c)=>输出设备,进入SAP系统 输出 ...

  8. SAP Business One SAP B1功能概述

    SAP Business One SAP B1功能概述 SAP B One配有易于使用的软件界面,是一款全面的,多功能的业务管理解决方案,贵企业可以将其用作主要的企业资源(ERP)应用程序. 该解决方 ...

  9. SAP ERP 与SAP CRM有什么不同?

    SAP ERP 与SAP CRM有什么不同? 从管理理念上来说,ERP是提高企业内部资源的计划和控制能力,讲究的是在满足客户.及时交货的同时最大限度地降低各种成本,通过提高内部运转效率来提高对客户的服 ...

随机推荐

  1. MyBaits一对一的查询方法

    MyBaits一对一的查询方法 一:表数据与表结构 CREATE TABLE teacher( t_id INT PRIMARY KEY AUTO_INCREMENT, t_name ) ); CRE ...

  2. JAVA 设计模式 中介者模式

    用途 中介者模式 (Mediator) 用一个中介对象来封装一系列的对象交互.中介者使各对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互. 中介者模式是一种行为型模式. 结 ...

  3. asp.Net获取脚本传过来的参数的方法汇总

    最基础的知识啦,不过,还是记下来吧. 接收用get 方法传输的数据的写法: string userName= Request.QueryString["name"]; 接收用pos ...

  4. JS魔法堂:被玩坏的innerHTML、innerText、textContent和value属性

    一.前言 由于innerText并非W3C标准属性,因此我们无法在FireFox中使用它(修正:FF45+已经支持innerText属性),一般情况下我们可以使用textContent来代替,但它两者 ...

  5. 深度浅出immutable.js

    这篇文章将讲述immutable.js的基本语法和用法. 1.fromJs()  Deeply converts plain JS objects and arrays to Immutable Ma ...

  6. Java Lambda表达式初探

    Java Lambda表达式初探 前言 本文受启发于Trisha Gee在JavaOne 2016的主题演讲Refactoring to Java 8. Java 8已经发行两年多,但很多人仍然在使用 ...

  7. HTML的select控件美化

    HTML的select控件美化 CSS: .div-select { border: solid 1px #999; height: 40px; line-height: 40px; cursor: ...

  8. 获取MS SQL TABLE列名列表

    在MS SQL Server中,想获取表的所有列名,可以使用下面SQL语句: SELECT [COLUMN_NAME] FROM [INFORMATION_SCHEMA].[Columns] WHER ...

  9. jQuery的Ajax请求数据时type无法使用GET

    写一个ASP.NET MVC例子,它是使用jQuery的$.Ajax来呼叫控制器的数据. 创建一个视图: 运行结果: 一切正常,但是本例子我们只是获取数据,并没有做任何数据POST上传至控制器,我们尝 ...

  10. 基于C#的MongoDB数据库开发应用(3)--MongoDB数据库的C#开发之异步接口

    在前面的系列博客中,我曾经介绍过,MongoDB数据库的C#驱动已经全面支持异步的处理接口,并且接口的定义几乎是重写了.本篇主要介绍MongoDB数据库的C#驱动的最新接口使用,介绍基于新接口如何实现 ...