Текущее время: Вс, июл 27 2025, 02:38

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Пн, июн 27 2011, 23:59 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
Всем привет.

Подскажите пожалуйста, как в функциональной АЛВ (REUSE_ALV_GRID_DISPLAY_LVC) поменять вариант программно.
Есть 2 варианта АЛВ: один детализированный, в нем много полей, а другой сводный, в нем большинство полей скрыты. И есть кнопочка с динамическим текстом "сводный\детализ.".
До меня не доходит, как установить вариант программно.
Решение искала в отладке, сначала пробовала ФМ LT_FC_LOAD, но он просто получает филдкаталог с настройками варианта.
Затем попробовала ФМ LVC_VARIANT_SAVE_LOAD, но там таже история.
Допустим, у меня есть каталог полей, как на основании его обновить уже нарисованную АЛВ?

З.Ы. Сейчас рабочий вариант пока такой: при нажатии на кнопочку "сводный\детализ." вызываю подпрограмму show_alv, в которую передаю вариант.
Переключение вариантов конечно же работает но при этом каждый раз отрисовывает на новом экране и соответственно при выходе из транзакции система "разматывает" экраны в обратную сторону.

Если делать смену вариантов по кнопке "Выбрать формат", то экран занова не отрисовывается.

_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 09:47 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
Ну например вот так:
Code:
     
      data: et_fieldcat type slis_t_fieldcat_alv.
      call function 'REUSE_ALV_GRID_LAYOUT_INFO_GET'
        importing
          et_fieldcat   = et_fieldcat
        exceptions
          no_infos      = 1
          program_error = 2
          others        = 3.

*  чего-то тут поделали.

      call function 'REUSE_ALV_GRID_LAYOUT_INFO_SET'
        exporting
          it_fieldcat = et_fieldcat.

       data: e_grid type ref to cl_gui_alv_grid.
       call function 'GET_GLOBALS_FROM_SLVC_FULLSCR'
         importing
           e_grid = e_grid.
       e_grid->refresh_table_display( i_soft_refresh = abap_true ).


Филдкаталоги можно либо хранить, либо брать из вариантов.

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 10:14 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
Смотрела 'REUSE_ALV_GRID_LAYOUT_INFO_GET' И 'REUSE_ALV_GRID_LAYOUT_INFO_SET'. Там тип филдкаталога SLIS_T_FIELDCAT_ALV, ну и другие параметры тоже SLIS, а у меня lvc_t_fcat.
Или эти ФМ все равно подходят? :oops:

_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 10:17 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
sBykova написала:
Смотрела 'REUSE_ALV_GRID_LAYOUT_INFO_GET' И 'REUSE_ALV_GRID_LAYOUT_INFO_SET'. Там тип филдкаталога SLIS_T_FIELDCAT_ALV, ну и другие параметры тоже SLIS, а у меня lvc_t_fcat.
Или эти ФМ все равно подходят? :oops:


Так LVC_TRANSFER_FROM_SLIS и LVC_TRANSFER_TO_SLIS.

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 10:19 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
>>'GET_GLOBALS_FROM_SLVC_FULLSCR'
а вот это штука возвращает нашу табличку? и таким образом мы ее обновим?

_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 10:59 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 08:55
Сообщения: 331
Откуда: Украина, г.Мариуполь
Пол: Мужской
sBykova написала:
>>'GET_GLOBALS_FROM_SLVC_FULLSCR'
а вот это штука возвращает нашу табличку? и таким образом мы ее обновим?


Если ALV был показан при помощи REUSE_ALV_GRID_DISPLAY_LVC, то необходимости в вызове GET_GLOBALS_FROM_SLVC_FULLSCR нет - достаточно в изменяемом параметре подпрограммы USER_COMMAND (обычно он называется rs_selfield) установить значение поля refresh в 'X'. Это приведёт к аналогичному с GET_GLOBALS_FROM_SLVC_FULLSCR результату - таблица на экране обновится.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?  Тема решена
СообщениеДобавлено: Вт, июн 28 2011, 11:22 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
sBykova написала:
До меня не доходит, как установить вариант программно.

Code:
REPORT  ztest45                                 .
TYPE-POOLS: slis.
DATA: it_tab LIKE TABLE OF sflight,
      it_ftab TYPE lvc_t_fcat,
      is_layo TYPE lvc_s_layo,
      isvar   LIKE disvariant,
      re_events TYPE slis_t_event,
      ls_event LIKE LINE OF re_events.
*
START-OF-SELECTION.
*
  SELECT * FROM sflight
  INTO TABLE it_tab UP TO 20 ROWS.
*
  CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
   EXPORTING
*   I_BUFFER_ACTIVE              =
     i_structure_name             = 'SFLIGHT'
*   I_CLIENT_NEVER_DISPLAY       = 'X'
*   I_BYPASSING_BUFFER           =
*   I_INTERNAL_TABNAME           =
    CHANGING
      ct_fieldcat                  = it_ftab
EXCEPTIONS
   inconsistent_interface       = 1
   program_error                = 2
   OTHERS                       = 3
            .
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
*
  CLEAR re_events[].
*
  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
    EXPORTING
      i_list_type = 0
    IMPORTING
      et_events   = re_events[].
*
  isvar-report = sy-repid.
*
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    EXPORTING
      i_callback_program       = sy-repid
      i_callback_pf_status_set = 'STATUS_SET'
      i_callback_user_command  = 'USER_COMMAND'
      it_fieldcat_lvc          = it_ftab
      i_save                   = 'X'
      is_variant               = isvar
      it_events                = re_events
    TABLES
      t_outtab                 = it_tab
    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.
*&---------------------------------------------------------------------*
*&      Form  STATUS_SET
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM status_set USING t_extab TYPE slis_t_extab.
  DATA: wa_t_extab TYPE slis_extab.
*
  SET PF-STATUS  'MY_STATUS' EXCLUDING t_extab.
*
ENDFORM.                    "handle_pf_status_set
*&---------------------------------------------------------------------*
*&      Form  USER_COMMAND
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->R_UCOMM      text
*      -->RS_SELFIELD  text
*----------------------------------------------------------------------*
FORM user_command USING r_ucomm     LIKE sy-ucomm
                            rs_selfield TYPE slis_selfield.
  CASE sy-ucomm.
    WHEN 'DET/SUM'.
      PERFORM alv_laymod_display.
  ENDCASE.
ENDFORM.                    "USER_COMMAND
*&---------------------------------------------------------------------*
*&      Form  alv_laymod_display
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM alv_laymod_display.
  IF isvar-variant IS INITIAL.
    isvar-variant = '/VAR'.
  ELSE.
    isvar-variant = space.
  ENDIF.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    EXPORTING
      i_callback_program       = sy-repid
      i_callback_pf_status_set = 'STATUS_SET'
      i_callback_user_command  = 'USER_COMMAND'
      it_fieldcat_lvc          = it_ftab
      is_variant               = isvar
      it_events                = re_events
    TABLES
      t_outtab                 = it_tab
    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.
  LEAVE TO SCREEN 0.
ENDFORM.                    " alv_laymod_display


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 11:27 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
RoadRunner написал:
sBykova написала:
>>'GET_GLOBALS_FROM_SLVC_FULLSCR'
а вот это штука возвращает нашу табличку? и таким образом мы ее обновим?


Она возвращает объект alv. С ним можно всякие интересности сделать. В том числе и манипулировать им напрямую, а не через интерфейс reuse*.

RoadRunner написал:
Если ALV был показан при помощи REUSE_ALV_GRID_DISPLAY_LVC, то необходимости в вызове GET_GLOBALS_FROM_SLVC_FULLSCR нет - достаточно в изменяемом параметре подпрограммы USER_COMMAND (обычно он называется rs_selfield) установить значение поля refresh в 'X'. Это приведёт к аналогичному с GET_GLOBALS_FROM_SLVC_FULLSCR результату - таблица на экране обновится.


В slis'овом тоже так можно.

Программно установить очень просто: где-то нужно хранить филдкаталоги, лэйауты и прочие части представлений отчёта (у тебя их два). В юзер-комманде (где у тебя 'DET/SUM' стоит) просто подменяешь один филдкаталог/лэйаут/что-то ещё другими с помощью вышеприведённого куска кода. При следующей обработке кода -- проделываешь обратную операцию. Это аналогично смене варианта ALV.

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 12:20 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
Code:
CASE sy-ucomm.
    WHEN 'DET/SUM'.
      PERFORM alv_laymod_display.
  ENDCASE.

To ROKO :
у меня сейчас так сделано, при этом табличка каждый раз отрисосывается на новом экранчике, я об этом писала выше. Потом нажимаешь на зеленую стрелочку, чтобы выйти и вместо выхода бежишь по эркнам столько раз, солько нажимала кнопку "Сводный/детализ"

_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 12:22 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
Цитата:
Если ALV был показан при помощи REUSE_ALV_GRID_DISPLAY_LVC, то необходимости в вызове GET_GLOBALS_FROM_SLVC_FULLSCR нет - достаточно в изменяемом параметре подпрограммы USER_COMMAND (обычно он называется rs_selfield) установить значение поля refresh в 'X'. Это приведёт к аналогичному с GET_GLOBALS_FROM_SLVC_FULLSCR результату - таблица на экране обновится.


refresh ставлю.... щас код выложу..

_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 12:41 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
sBykova написала:
у меня сейчас так сделано, при этом табличка каждый раз отрисосывается на новом экранчике, я об этом писала выше. Потом нажимаешь на зеленую стрелочку, чтобы выйти и вместо выхода бежишь по эркнам столько раз, солько нажимала кнопку "Сводный/детализ"

Code:
LEAVE TO SCREEN 0.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 12:42 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
Code:
*FOR ALV
DATA gs_variant TYPE disvariant.
DATA gt_fcat    TYPE lvc_t_fcat.
DATA gs_layout  TYPE lvc_s_layo.

FORM show_alv .

*  DATA lt_slis_fcat TYPE slis_t_fieldcat_alv.
*  DATA ls_slis_layout TYPE slis_layout_alv.

  PERFORM make_field_catalog CHANGING gt_fcat.

  CHECK gv_error IS INITIAL.

  gs_layout-no_rowmark = 'X'.
  gs_layout-cwidth_opt = ''.
  gs_layout-no_colexpd = 'X'.

  gs_variant-report   = sy-cprog.
  gs_variant-username = sy-uname.

  IF p_detail = 'X'.
    gs_variant-variant  = '/DETAILED'.
  ELSE.
    gs_variant-variant  = '/FRONT'.
  ENDIF.


  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
   EXPORTING

     i_callback_program                = sy-cprog
     i_callback_pf_status_set          = 'SET_STATUS'
     i_callback_user_command           = 'USER_COMMAND'

     is_layout_lvc                     = gs_layout
     it_fieldcat_lvc                   = gt_fcat

     it_sort_lvc                        = it_sort

     i_save                            = 'A'
     is_variant                        = gs_variant

    TABLES
      t_outtab                          = it_outtab
   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.                    " SHOW_ALV

Code:
FORM set_status USING pt_extab TYPE slis_t_extab.
  SET PF-STATUS 'STATUS_MAIN'.

  IF p_detail = 'X'.
    g_zformat_text = text-s01. "Сводный
  ELSE.
    g_zformat_text = text-s02. "Детализ.
  ENDIF.

ENDFORM.                    "zSET_STATUS

Code:
FORM user_command USING r_ucomm TYPE sy-ucomm
                        rs_selfield TYPE slis_selfield.

  DATA: ls_alv  LIKE LINE OF it_outtab,
        ls_so   LIKE LINE OF it_so,
        ls_pr   LIKE LINE OF it_pr,
        ls_po   LIKE LINE OF it_po.


  READ TABLE it_outtab INTO ls_alv INDEX rs_selfield-tabindex.
  CASE r_ucomm.
   
    WHEN 'ZFORMAT'.
*      -------------------------------------
*   Рабочий вариант "с переходом по экранам":
*   1. нажали 'ZFORMAT', поля скрылись\показались
*   2. нажали "назад" и вернулись обратно (чего не нужно, тк чем болше нажимаем 'ZFORMAT',
*    тем больше потом возвращаться)
      IF p_detail = 'X'.
        p_detail = ''.
      ELSE.
        p_detail = 'X'.
      ENDIF.

      PERFORM show_alv.
*      -----------------------------------------
*        Этот вариант не работает!!!
      IF p_detail = 'X'.
        p_detail = ''.
        gs_variant-variant = '/FRONT'.
        g_zformat_text = text-s02.
      ELSE.
        p_detail = 'X'.
        gs_variant-variant = '/DETAILED'.
        g_zformat_text = text-s01.
      ENDIF.

      DATA: ls_fcat LIKE LINE OF gt_fcat,
*            ct_default_fieldcat TYPE kkblo_t_fieldcat,
            ct_default_fieldcat LIKE gt_fcat,
            et_fieldcat TYPE  kkblo_t_fieldcat,
            wa LIKE LINE OF ct_default_fieldcat,
            cs_layout TYPE kkblo_layout.



      ct_default_fieldcat = gt_fcat.
      CALL FUNCTION 'LVC_VARIANT_SAVE_LOAD'
* EXPORTING
*   I_TITLE                     =
*   I_SCREEN_START_COLUMN       = 0
*   I_SCREEN_START_LINE         = 0
*   I_SCREEN_END_COLUMN         = 0
*   I_SCREEN_END_LINE           = 0
*   I_SAVE_LOAD                 = 'L'
*   I_TOOL                      = 'LT'
*   I_TABNAME                   = '1'
*   I_USER_SPECIFIC             = ' '
*   I_DEFAULT                   = 'X'
*   I_NO_REPTEXT_OPTIMIZE       = 'X'
*   I_DIALOG                    = 'X'
*   IR_TO_CL_ALV_BDS            =
*   IR_TO_CL_ALV_VARIANT        =
*   I_BYPASSING_BUFFER          =
*   I_BUFFER_ACTIVE             =
*   I_FCAT_COMPLETE             =
* IMPORTING
*   ES_SELFIELD                 =
*   E_BDS_SAVE                  =
*   E_GRAPHICS_SAVE             =
*   E_EXIT                      =
       TABLES
         it_data                     = it_outtab
        CHANGING
          cs_variant                 = gs_variant
         cs_layout                   = gs_layout
         ct_fieldcat                 = gt_fcat
         ct_default_fieldcat         = ct_default_fieldcat
*   CT_SORT                     =
*   CT_FILTER                   =
*   CT_GROUPLEVELS_FILTER       =
*   C_SUMLEVEL                  =
       EXCEPTIONS
         not_found                   = 1
         wrong_input                 = 2
         fc_not_complete             = 3
         OTHERS                      = 4
                .
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.


      rs_selfield-refresh = 'X'.
*      -----------------------------------------

  ENDCASE.

ENDFORM.                    "user_command

_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 12:43 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
>>LEAVE TO SCREEN 0.
сорри, не заметила, сейчас попробую

_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ALV-GRID: как программно поменять вариант?
СообщениеДобавлено: Вт, июн 28 2011, 12:49 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, янв 14 2009, 09:24
Сообщения: 69
Откуда: Санкт-Петербург
Пол: Женский
Code:
LEAVE TO SCREEN 0.


Спааасиииибо!!!! Работает!!!)
А я среди такого множества ваших строк и не заметила самую важную строчку.))

_________________
Пессимисты, глядя на стакан, содержащий 50% воды и 50% воздуха, говорят, что он наполовину пуст.
Оптимисты, наоборот, считают, что наполовину полон.
А разработчики понимают, что просто сам стакан в два раза больше, чем должен быть.

(c) Боб Льюис


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB