阳光网驿-企业信息化交流平台【DTC零售连锁全渠道解决方案】

 找回密码
 注册

QQ登录

只需一步,快速开始

扫描二维码登录本站

手机号码,快捷登录

老司机
查看: 2262|回复: 0

[求助] 用友二次开发凭证调用,T6/U8 保存报错

[复制链接]
  • TA的每日心情
    开心
    2023-5-9 15:59
  • 签到天数: 1654 天

    [LV.Master]伴坛终老

    发表于 2012-11-25 21:49:30 | 显示全部楼层 |阅读模式
    10阳光币
    以下代码是VB6 做的U872生成凭证的过程:
    Dim m_login As New U8Login.clsLogin '定义注册对象
    Dim m_ZwPub As New clsPub
    '定义公用函数
    Dim WithEvents m_objPz  As ZzPz.clsPZ
    Dim UfDb      As New UfDbKit.UfDatabase
    '定义凭证对象
    Private Sub Command1_Click()
       Dim sysLogin As Object
       Set sysLogin = CreateObject("UFSoft.U8.Framework.Login.UI.clsLogin")
        If sysLogin.login_2("AA") = False Then
          MsgBOx sysLogin.ErrDescript
       Else
          MsgBox "login ok"
       End If
       If m_login.ConstructLogin(sysLogin.userToken) = False Then
          MsgBox g_oLogin.ShareString
          Exit Sub
       Else
          MsgBox "ConstructLogin ok"
       End If
    End Sub
    Private Sub Command2_Click()
       UfDb.OpenDatabase m_login.UfDbName
       m_ZwPub.InitPubs2 "IA", m_login.UfSystemDb, UfDb, m_login.cAcc_Id, m_login.cIYear, m_login.cUserId, m_login.CurDate, m_login.SysPassword
       Set m_objPz = New clsPZ
       Set m_objPz.zzLogin = m_login
       Set m_objPz.zzSys = m_ZwPub
       Dim rstVouch   As New UfDbKit.UfRecordset
       Set rstVouch = m_ZwPub.DataMdb.OpenRecordset("Select * from " & m_ZwPub.WbTableName)
       For i = 0 To 1
           rstVouch.AddNew
           rstVouch.Fields("inid").Value = i + 1
           If i = 0 Then
              rstVouch.Fields("ccode").Value = "100201"
              rstVouch.Fields("md").Value = 500
              rstVouch.Fields("nd_s").Value = 0
              rstVouch.Fields("md_f").Value = 0
              rstVouch.Fields("mc").Value = 0
              rstVouch.Fields("nc_s").Value = 0
              rstVouch.Fields("mc_f").Value = 0
           Else
              rstVouch.Fields("ccode").Value = "6001"
              rstVouch.Fields("md").Value = 0
              rstVouch.Fields("nd_s").Value = 0
              rstVouch.Fields("md_f").Value = 0
              rstVouch.Fields("mc").Value = 500
              rstVouch.Fields("nc_s").Value = 0
              rstVouch.Fields("mc_f").Value = 0
           End If
           rstVouch.Fields("coutsysname").Value = "IA"
           rstVouch.Fields("ioutperiod").Value = 10
           rstVouch.Fields("coutsign") = "存货核算"
           rstVouch.Fields("coutno_id").Value = "00000001"
           rstVouch.Fields("doutdate").Value = m_login.CurDate
           rstVouch.Fields("coutbillsign").Value = "SC"
           rstVouch.Fields("cOutid").Value = "000001"
           rstVouch.Fields("bvouchedit").Value = True                       '----凭证是否可修改
           rstVouch.Fields("bvouchaddordele").Value = False                  '----凭证分录是否可删除
           rstVouch.Fields("bvalueedit").Value = False                       '----分录数值是否可修改
           rstVouch.Fields("bcodeedit").Value = True                        '----科目是否可修改
           rstVouch.Fields("bPCSedit").Value = True                         '----往来项是否可修改
           rstVouch.Fields("bDeptedit").Value = True                        '----部门信息是否可修改
           rstVouch.Fields("bItemedit").Value = True                        '----项目信息是否可修改
           rstVouch.Fields("bCusSupInput").Value = True                    '----往来信息是否必须
           rstVouch.Fields("idoc").Value = 1                                '----凭证附件张数
           rstVouch.Fields("cbill").Value = m_login.cUserName             '----制单人
           rstVouch.Fields("doutbilldate").Value = m_login.CurDate        '----制单日期
           rstVouch.Update
       Next
       m_objPz.StartUpPz "IA", "IASCPZ", ZzPz.pzStyle.Pz_ZD
    End Sub
    Private Sub m_objPz_Save(rstCurrentVouch As ADODB.Recordset, IsSuccess As Boolean)
       IsSuccess = True
    End Sub

    运行出现下图错误提示:

    注:以前凭证都是可以(U852、U860)的,为什么U872就不行了呢?郁闷啊,有知道的朋友提示一下吧

    用友T6也是报这样的错误,保存凭证时提示“外部系统处理出错”

    调用凭证.jpg


    楼主热帖
    启用邀请码注册,提高发帖质量,建设交流社区
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表