货源清单BDC导入程序

来源:互联网 发布:烟台网络党校登录 编辑:程序博客网 时间:2024/04/29 04:33
*&---------------------------------------------------------------------*
*& Report  ZJ_ABAP_OBJ_MM_0240
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT ZJ_ABAP_OBJ_MM_0240.

*************************************************************************
*DATA
*************************************************************************
DATABEGIN OF gdt_input OCCURS 0,
  matnr LIKE eord-matnr,
  werks LIKE eord-werks,
  vdatu TYPE string,
  bdatu TYPE  string,
  lifnr LIKE eord-lifnr,
  ekorg LIKE eord-ekorg,
  flifn LIKE eord-flifn,
  autet LIKE eord-autet,

  type TYPE c,
  message TYPE string,
  END OF gdt_input.
DATABEGIN OF gdt_eina OCCURS 0,
  infnr LIKE eina-infnr,
  matnr LIKE eina-matnr,
  lifnr LIKE eina-lifnr,
  werks LIKE eine-werks,
  ekorg LIKE eine-ekorg,
  esokz LIKE eine-esokz,
  END OF gdt_eina.
DATABEGIN OF gdt_eord OCCURS 0,
  matnr LIKE eord-matnr,
  werks LIKE eord-werks,
  zeord LIKE eord-zeord,
  END OF gdt_eord.
DATABEGIN OF gdt_tab OCCURS 0,
  matnr LIKE eord-matnr,
  werks LIKE eord-werks,
  "lifnr LIKE eord-lifnr,
  type TYPE c,
  message TYPE string,
  END OF gdt_tab.

TYPES:BEGIN OF gts_help,
  matnr TYPE eord-matnr,
  werks TYPE eord-werks,
  END OF gts_help.

DATA:gdt_help TYPE STANDARD TABLE OF gts_help,
      gds_help TYPE gts_help.
*----------------------------------------------------------------------*
*  定义BDC数据对象
*----------------------------------------------------------------------*
DATABEGIN OF gdt_bdcdata OCCURS 100.
        INCLUDE STRUCTURE bdcdata.
DATAEND OF gdt_bdcdata.
DATA gdt_messtab LIKE bdcmsgcoll OCCURS WITH HEADER LINE."BDC录屏返回消息
TYPES:BEGIN OF gts_message,
type TYPE c,           "消息类型
message(200TYPE c,   "消息信息
END OF gts_message.
DATA gdt_message TYPE STANDARD TABLE OF gts_message WITH HEADER LINE.

*----------------------------------------------------------------------*
*  定义alv数据对象
*----------------------------------------------------------------------*
DATAgdt_fieldcat TYPE slis_t_fieldcat_alv,
      gds_fieldcat TYPE slis_fieldcat_alv,
      gds_layout TYPE slis_layout_alv.

DATAgdf_flifn TYPE i.
DATAgdf_erro TYPE c.
*----------------------------------------------------------------------*
*  定义选择界面
*----------------------------------------------------------------------*
*SELECTION-SCREEN BEGIN OF BLOCK b4 WITH FRAME TITLE text-011.
*PARAMETERS: r_1 RADIOBUTTON GROUP g2 DEFAULT 'X' ,
*            r_2 RADIOBUTTON GROUP g2.
*SELECTION-SCREEN END OF BLOCK b4.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-011.
PARAMETERSp_infile TYPE rlgrap-filename  MEMORY ID m01.
PARAMETERSp_test AS CHECKBOX ."DEFAULT 'X'.
SELECTION-SCREEN END OF BLOCK b1.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_infile.
  PERFORM frm_get_path."获取文件路径

START-OF-SELECTION.

"  IF r_1 = 'X'.
    PERFORM frm_upload_data."数据上载
    PERFORM frm_check_data."数据校验
    PERFORM frm_update_sourcelist."货源清单上传
    PERFORM frm_alv_display."结果显示
*  ELSE.
*    "submit AQZZZ_ME11======Z_ME11========  .
*    CALL  TRANSACTION 'ZKMM004'.
*  ENDIF.

END-OF-SELECTION.
*&---------------------------------------------------------------------*
*&      Form  FRM_GET_PATH
*&---------------------------------------------------------------------*
*       获取文件上传路径
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM frm_get_path .
  CALL FUNCTION 'TB_LIMIT_WS_FILENAME_GET'
    EXPORTING
*     DEF_FILENAME     = ' '
*     DEF_PATH         = ' '
      mask             'Excel Files,*.xlsx,*.*. '
*     MODE             = ' '
*     TITLE            = ' '
    IMPORTING
      filename         p_infile
*     PATH             =
*     FILE             =
    EXCEPTIONS
      selection_cancel 1
      selection_error  2
      OTHERS           3.
  IF sy-subrc <> 0.
*    MESSAGE '获取文件路径失败!' TYPE 'E'.
  ENDIF.
ENDFORM.                    " FRM_GET_PATH
*&---------------------------------------------------------------------*
*&      Form  FRM_UPLOAD_DATA
*&---------------------------------------------------------------------*
*       上载数据
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM frm_upload_data .
  DATAldt_raw_data TYPE  truxs_t_text_data.

  CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
    EXPORTING
*     I_FIELD_SEPERATOR    =
      i_line_header        'X'
      i_tab_raw_data       ldt_raw_data
      i_filename           p_infile
    TABLES
      i_tab_converted_data gdt_input
    EXCEPTIONS
      conversion_failed    1
      OTHERS               2.

  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
  LOOP AT gdt_input.
    CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
      EXPORTING
        INPUT             gdt_input-matnr
     IMPORTING
       OUTPUT             gdt_input-matnr
     EXCEPTIONS
       LENGTH_ERROR       1
       OTHERS             2
              .
    IF SY-SUBRC <> 0.
* Implement suitable error handling here
    ENDIF.

   CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
     EXPORTING
       INPUT         gdt_input-LIFNR
     IMPORTING
      OUTPUT        gdt_input-LIFNR
             .

    MODIFY gdt_input.
  ENDLOOP.
ENDFORM.                    " FRM_UPLOAD_DATA
*&---------------------------------------------------------------------*
*&      Form  FRM_CHECK_DATA
*&---------------------------------------------------------------------*
*       数据检查
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM frm_check_data .
  DATA:ldf_tabix TYPE sy-tabix.
  DATA:ldf_message TYPE LENGTH 100.
  DATA:ldf_type TYPE c.
  DATA:lds_input LIKE LINE OF gdt_input.
*  LOOP AT gdt_input.
*    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
*      EXPORTING
*        input  = gdt_input-matnr
*      IMPORTING
*        output = gdt_input-matnr.
*    MODIFY gdt_input.
*  ENDLOOP.
  "判断信息记录是否存在
  IF gdt_input[] IS NOT INITIAL.
    SELECT eina~infnr
           matnr
           werks
           ekorg
           lifnr
           esokz
      INTO CORRESPONDING FIELDS OF TABLE gdt_eina
      FROM eina
      JOIN eine
      ON eina~infnr eine~infnr
      FOR ALL ENTRIES IN gdt_input
      WHERE matnr gdt_input-matnr
      AND werks gdt_input-werks
      AND ekorg gdt_input-ekorg
      AND lifnr gdt_input-lifnr.
    SELECT matnr
           werks
           zeord
      INTO CORRESPONDING FIELDS OF TABLE gdt_eord
      FROM eord
      FOR ALL ENTRIES IN gdt_input
      WHERE matnr gdt_input-matnr
      AND werks gdt_input-werks.
  ENDIF.
  "sort gdt_input.
  REFRESH gdt_help.
  LOOP AT gdt_input.
    ldf_tabix sy-tabix.
    "判断信息记录是否存在
    CLEAR ldf_message.
    CLEAR ldf_type.
    READ TABLE gdt_eina WITH KEY matnr gdt_input-matnr werks gdt_input-werks lifnr gdt_input-lifnr ekorg gdt_input-ekorg.
    IF sy-subrc <> 0.
      CLEAR:gds_help.
      gds_help-matnr gdt_input-matnr.
      gds_help-werks gdt_input-werks.
      APPEND gds_help TO gdt_help.
      gdt_input-type 'E'.
      ldf_type 'E'.
      gdt_input-message text-001.
      ldf_message =   gdt_input-message .
      gdf_erro 'X'.
    ENDIF.
    "一个物料工厂只有一个固定货源
    AT NEW werks.
      CLEAR gdf_flifn.
      READ TABLE gdt_input INDEX ldf_tabix.

    ENDAT.
    gdt_input-type ldf_type.
    gdt_input-message ldf_message.
    IF gdt_input-flifn 'X'.
      gdf_flifn gdf_flifn + 1.
      IF gdf_flifn > 1.
        CLEAR:gds_help.
        gds_help-matnr gdt_input-matnr.
        gds_help-werks gdt_input-werks.
        APPEND gds_help TO gdt_help.
        gdt_input-type 'E'.
        gdt_input-message text-002.
        gdf_erro 'X'.
      ENDIF.
    ENDIF.
    "对比两个工作区域
    IF gdt_input lds_input.
      CLEAR:gds_help.
      gds_help-matnr gdt_input-matnr.
      gds_help-werks gdt_input-werks.
      APPEND gds_help TO gdt_help.
      gdt_input-type 'E'.
      gdt_input-message '该行数据和前一行一样'.
      gdf_erro 'X'.
    ENDIF.
    MOVE-CORRESPONDING gdt_input TO lds_input.
    CLEAR:lds_input-type,lds_input-message.
    MODIFY gdt_input.
  ENDLOOP.
ENDFORM.                    " FRM_CHECK_DATA
*&---------------------------------------------------------------------*
*&      Form  FRM_UPDATE_SOURCELIST
*&---------------------------------------------------------------------*
*       更新货源清单
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM frm_update_sourcelist .
  DATAldf_line(2TYPE n.
  DATAldf_field TYPE string.
  DATAldf_tabix LIKE sy-tabix.
  sort gdt_help by matnr werks.
  IF p_test '' .
    LOOP AT gdt_input.
      ldf_tabix sy-tabix.
      "校验是否有错误
      READ TABLE gdt_help INTO gds_help with key matnr gdt_input-matnr werks gdt_input-werks.
      if sy-subrc eq 0.
        gdt_input-type 'E'.
          MODIFY gdt_input INDEX ldf_tabix.
        CONTINUE.
        endif.
      AT NEW werks.
        READ TABLE gdt_input INDEX sy-tabix.
        CLEAR ldf_line.
        READ TABLE gdt_eord WITH KEY matnr gdt_input-matnr werks gdt_input-werks.
        IF sy-subrc 0."修改
          PERFORM bdc_dynpro      USING 'SAPLMEOR' '0200'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                'EORD-MATNR'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                '/00'.
          PERFORM bdc_field       USING 'EORD-MATNR'
                gdt_input-matnr.
          PERFORM bdc_field       USING 'EORD-WERKS'
                gdt_input-werks.
          PERFORM bdc_dynpro      USING 'SAPLMEOR' '0205'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                'EORD-EBELP(01)'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                '=SA'.
          PERFORM bdc_dynpro      USING 'SAPLMEOR' '0205'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                'EORD-EBELP(01)'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                '=LOES'.
          PERFORM bdc_dynpro      USING 'SAPLSPO1' '0200'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                '=YES'.
          PERFORM bdc_dynpro      USING 'SAPLMEOR' '0205'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                'EORD-EKORG(02)'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                '=BU'.
        ELSE."创建
          PERFORM bdc_dynpro      USING 'SAPLMEOR' '0200'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                'EORD-MATNR'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                '/00'.
          PERFORM bdc_field       USING 'EORD-MATNR'
                gdt_input-matnr.
          PERFORM bdc_field       USING 'EORD-WERKS'
                gdt_input-werks.
          PERFORM bdc_dynpro      USING 'SAPLMEOR' '0205'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                'EORD-AUTET(02)'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                '=BU'.
        ENDIF.
      ENDAT.

      ldf_line ldf_line + 1.
      CONCATENATE 'EORD-VDATU(' ldf_line ')' INTO ldf_field.
      PERFORM bdc_field       USING ldf_field
            gdt_input-vdatu.
      CONCATENATE 'EORD-BDATU(' ldf_line ')' INTO ldf_field.
      PERFORM bdc_field       USING ldf_field
            gdt_input-bdatu.
      CONCATENATE 'EORD-LIFNR(' ldf_line ')' INTO ldf_field.
      PERFORM bdc_field       USING ldf_field
            gdt_input-lifnr.
      CONCATENATE 'EORD-EKORG(' ldf_line ')' INTO ldf_field.
      PERFORM bdc_field       USING ldf_field
            gdt_input-ekorg.
      CONCATENATE 'RM06W-FESKZ(' ldf_line ')' INTO ldf_field.
      PERFORM bdc_field       USING ldf_field
            gdt_input-flifn.
      CONCATENATE 'EORD-AUTET(' ldf_line ')' INTO ldf_field.
      PERFORM bdc_field       USING ldf_field
            gdt_input-autet.
      AT END OF werks.
        READ TABLE gdt_input INDEX ldf_tabix.
        CALL TRANSACTION 'ME01' USING gdt_bdcdata
              MODE  'N'
              UPDATE 'S'
              MESSAGES INTO gdt_messtab.
        "wait UP TO '0.5' SECONDS.
        LOOP AT gdt_messtab.
          CLEAR gdt_message.
          CALL FUNCTION 'MESSAGE_TEXT_BUILD'
            EXPORTING
              msgid               gdt_messtab-msgid
              msgnr               gdt_messtab-msgnr
              msgv1               gdt_messtab-msgv1
              msgv2               gdt_messtab-msgv2
              msgv3               gdt_messtab-msgv3
              msgv4               gdt_messtab-msgv4
            IMPORTING
              message_text_output gdt_message-message.
          gdt_message-type gdt_messtab-msgtyp.
          APPEND gdt_message.
          CLEAR gdt_message.
        ENDLOOP.

        gdt_tab-matnr gdt_input-matnr.
        gdt_tab-werks gdt_input-werks.
        "gdt_tab-lifnr = gdt_input-lifnr.
        LOOP AT gdt_message.
          IF gdt_message-type 'E'.
            gdt_tab-type 'E'.
            gdt_tab-message gdt_message-message.
          ENDIF.
          IF gdt_message-type 'S'.
            gdt_tab-type 'S'.
            gdt_tab-message gdt_message-message.
          ENDIF.
        ENDLOOP.
        APPEND gdt_tab.
        CLEAR gdt_tab.

        CLEAR gdt_bdcdata.
        REFRESH gdt_bdcdata.
        CLEAR gdt_messtab.
        REFRESH gdt_messtab.
        CLEAR gdt_message.
        REFRESH gdt_message.
      ENDAT.
    ENDLOOP.
    LOOP AT gdt_input.
      READ TABLE gdt_tab WITH KEY matnr gdt_input-matnr werks gdt_input-werks ."lifnr = gdt_input-lifnr.
      IF sy-subrc 0.
        gdt_input-type gdt_tab-type.
        gdt_input-message gdt_tab-message.
        MODIFY gdt_input.
      ENDIF.
    ENDLOOP.
  ENDIF.
ENDFORM.                    " FRM_UPDATE_SOURCELIST
*&---------------------------------------------------------------------*
*&      Form  BDC_DYNPRO
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM bdc_dynpro  USING    program   dynpro .
  CLEAR gdt_bdcdata.
  gdt_bdcdata-program  program.
  gdt_bdcdata-dynpro   dynpro.
  gdt_bdcdata-dynbegin 'X'.
  APPEND gdt_bdcdata.
ENDFORM.                    " BDC_DYNPRO
*&---------------------------------------------------------------------*
*&      Form  BDC_FIELD
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_0254   text
*      -->P_0255   text
*----------------------------------------------------------------------*
FORM bdc_field  USING fnam   fval.
  CLEAR gdt_bdcdata.
  gdt_bdcdata-fnam fnam.
  gdt_bdcdata-fval fval.
  APPEND gdt_bdcdata.
ENDFORM.                    " BDC_FIELD
*&---------------------------------------------------------------------*
*&      Form  FRM_ALV_DISPLAY
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM frm_alv_display .
  CLEAR gdt_fieldcat.
  REFRESH gdt_fieldcat.
  PERFORM frm_filldf_fieldcat.
  PERFORM frm_alv_layout.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
*     I_INTERFACE_CHECK                 = ' '
*     I_BYPASSING_BUFFER                = ' '
    i_buffer_active                   'X'
    i_callback_program                sy-repid
*      i_callback_pf_status_set          = 'PF_STATUS'
*      i_callback_user_command           = 'USER_COMMAND'
*     I_CALLBACK_TOP_OF_PAGE            = ' '
*     I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*     I_CALLBACK_HTML_END_OF_LIST       = ' '
*     I_STRUCTURE_NAME                  =
*     I_BACKGROUND_ID                   = ' '
*     I_GRID_TITLE                      =
*     I_GRID_SETTINGS                   =
    is_layout                         gds_layout
    it_fieldcat                       gdt_fieldcat
*     IT_EXCLUDING                      =
*     IT_SPECIAL_GROUPS                 =
*     IT_SORT                           =
*     IT_FILTER                         =
*     IS_SEL_HIDE                       =
*     I_DEFAULT                         = 'X'
*     I_SAVE                            = ' '
*     IS_VARIANT                        =
*     IT_EVENTS                         =
*     IT_EVENT_EXIT                     =
*     IS_PRINT                          =
*     IS_REPREP_ID                      =
*     I_SCREEN_START_COLUMN             = 0
*     I_SCREEN_START_LINE               = 0
*     I_SCREEN_END_COLUMN               = 0
*     I_SCREEN_END_LINE                 = 0
*     I_HTML_HEIGHT_TOP                 = 0
*     I_HTML_HEIGHT_END                 = 0
*     IT_ALV_GRAPHICS                   =
*     IT_HYPERLINK                      =
*     IT_ADD_FIELDCAT                   =
*     IT_EXCEPT_QINFO                   =
*     IR_SALV_FULLSCREEN_ADAPTER        =
*   IMPORTING
*     E_EXIT_CAUSED_BY_CALLER           =
*     ES_EXIT_CAUSED_BY_USER            =
  TABLES
    t_outtab                          gdt_input
*   EXCEPTIONS
*     PROGRAM_ERROR                     = 1
*     OTHERS                            = 2
    .
  IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDFORM.                    " FRM_ALV_DISPLAY
*&---------------------------------------------------------------------*
*&      Form  FRM_FILldf_fieldCAT
*&---------------------------------------------------------------------*
*       填充ALV显示字段
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM frm_filldf_fieldcat .
  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'MATNR'.
  gds_fieldcat-seltext_m '品目コード'.
  gds_fieldcat-no_zero 'X'.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'WERKS'.
  gds_fieldcat-seltext_m 'プラント'.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'VDATU'.
  gds_fieldcat-seltext_m '有効開始日'.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'BDATU'.
  gds_fieldcat-seltext_m ' 有効終了日'.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'LIFNR'.
  gds_fieldcat-seltext_m '仕入先コード'.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'EKORG'.
  gds_fieldcat-seltext_m '購買組織'.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'FLIFN'.
  gds_fieldcat-seltext_m '固定'.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'AUTET'.
  gds_fieldcat-seltext_m '   MRPで使用 '.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'TYPE'.
  gds_fieldcat-seltext_m 'メッセージタイプ'.
  APPEND gds_fieldcat TO gdt_fieldcat.

  CLEAR gds_fieldcat.
  gds_fieldcat-fieldname 'MESSAGE'.
  gds_fieldcat-seltext_m 'メッセージ'.
  APPEND gds_fieldcat TO gdt_fieldcat.
ENDFORM.                    " FRM_FILldf_fieldCAT
*&---------------------------------------------------------------------*
*&      Form  FRM_ALV_LAYOUT
*&---------------------------------------------------------------------*
*       设置ALV显示格式
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM frm_alv_layout .
  gds_layout-colwidth_optimize 'X'.
ENDFORM.                    " FRM_ALV_LAYOUT
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 小明上课总是东张西望你该怎么办 初中二年级贪玩游戏说不听怎么办 孩子上课经常和别的同学说话怎么办 小孩五年级了上课坐不住怎么办 孩子老是纠结小事抓不住重点怎么办 没文化不懂教不了孩孑怎么办 孩孑学习不好老师不让上课怎么办 5个月婴儿睡得少怎么办 教育案例——幼儿爱打小报告怎么办 上班的时候同事老是爱插话怎么办 孕晚期右侧卧睡觉宝宝好动怎么办 乐扣玻璃碗盖子长霉怎么办 乐扣保鲜盒密封圈有异味怎么办 8个月的宝宝不吃饭怎么办 宝宝十一个月了不爱吃饭怎么办 一岁八个月宝宝不爱吃饭怎么办 14个月的宝宝不爱吃饭怎么办 宝宝一岁多又黑又瘦又小该怎么办? 15个月宝宝偏瘦该怎么办 早期肺癌手术后身体瘦该怎么办 4个月婴儿的眼里有触摸糊怎么办 七个月宝宝断奶不喝奶粉怎么办 2个月的宝宝抓头怎么办 4岁宝宝吃东西一点都不认真怎么办 猫吐了白色黏液或泡沫怎么办 六个月的宝宝拉肚子老不好怎么办 小狗狗呕吐后拉肚子带血怎么办 八个月宝宝拉肚子拉出点血怎么办 在饿了么点外卖吃出虫子怎么办 1岁半宝宝拉肚子拉水怎么办 五个多月宝宝拉鼻涕便怎么办 一岁宝宝拉鼻涕样大便怎么办 宝宝拉粘液大便鼻涕状的怎么办 十个月宝宝拉鼻涕一样大便怎么办 7个月宝宝咳嗽反反复复发热怎么办 婴儿3个月突然不吃奶瓶怎么办? 2个月婴儿突然不肯用奶瓶怎么办 喝母乳的宝宝不喝奶瓶怎么办 三个月宝宝不喝奶瓶母乳不够怎么办 七个多月的宝宝不吃辅食怎么办 婴儿光认奶粉不认母乳怎么办