Так вот я и интересуюсь - сделано ли это на враппере, который продают, причём не задёшево. Хотя у меня и Экселя-то нет...
Экспорт в Microsoft Excel (много)
Модератор: Дед Пахом
					Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
	При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- Дед Пахом
 - Старичок
 - Сообщения: 3346
 - Зарегистрирован: 07 Июль 2005, 16:51
 - Откуда: Москва, Россия
 - Благодарил (а): 20 раз
 - Поблагодарили: 56 раз
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
С уважением, ДП
			
						- Admin
 - Администратор
 - Сообщения: 4022
 - Зарегистрирован: 05 Июль 2005, 15:59
 - Откуда: Хабаровск
 - Благодарил (а): 59 раз
 - Поблагодарили: 42 раза
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
Нашел проект для сборки под Windows 
Собрал. Работает.
Примеров куча тут
Пример подключения к Clarion
			
			
									
						Собрал. Работает.
Примеров куча тут
Пример подключения к Clarion
Код: Выделить всё
  PROGRAM
  INCLUDE('Cstr.inc')
  MAP
    MODULE('LibXlsxWriter.dll')
      new_workbook(*CSTRING FileName),LONG,RAW,C
      workbook_close(LONG wordbook),PROC,LONG,RAW,C
      workbook_add_worksheet(LONG wordbook, *CSTRING sheetname),LONG,RAW,C
      worksheet_write_string(LONG worksheet, LONG row_num, LONG col_numm, *CSTRING text, LONG format),PROC,LONG,RAW,C
    END
  END
lwordbook     LONG
lworksheet    LONG
lformat       LONG
lrow          LONG
lcol          LONG
cFileName     CSTRING(255)  
cSheetName    CSTRING(255)
cText         CSTRING(255)
cs            Cstr
  CODE
  cFileName = 'result.xlsx'
  lwordbook = new_workbook(cFileName)
  cSheetName = 'Example'
  lworksheet = workbook_add_worksheet(lwordbook, cSheetName)
  cText = 'Write test string from Clarion'
  worksheet_write_string(lworksheet, 0, 0, cText, ADDRESS(lformat))  
  cs.set('Пример строки из Clarion')
  cs.ToUTF8()
  cText = cs.cstr()
  worksheet_write_string(lworksheet, 1, 0, cText, ADDRESS(lformat))  
  workbook_close(lwordbook)
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
			
						- Admin
 - Администратор
 - Сообщения: 4022
 - Зарегистрирован: 05 Июль 2005, 15:59
 - Откуда: Хабаровск
 - Благодарил (а): 59 раз
 - Поблагодарили: 42 раза
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
2 миллиона ячеек заполняется на моем компе за 14 секунд. Без форматирования конечно же.
			
			
									
						Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
			
						Экспорт в Microsoft Excel (много)
А на Python, интересно, сколько займёт. Из Clarion вполне вызываемо, и выглядит попроще. Завтра развлекусь...
			
			
									
						- ingasoftplus
 - Ветеран
 - Сообщения: 481
 - Зарегистрирован: 26 Декабрь 2006, 17:07
 - Откуда: Оттуда :)
 - Благодарил (а): 131 раз
 - Поблагодарили: 9 раз
 
Экспорт в Microsoft Excel (много)
вот ответ:  
			
			
									
						Currently there is no demo. I will create one and put it on my website. I should be able to post it by Thursday.
The documentation is here: https://libxlsxwriter.github.io/
The wrapper is for the open source LibXlsxWriter library. I have written a bit of C code to better interface with Clarion.
Экспорт в Microsoft Excel (много)
Admin, твоя сборка - 334 Kb, 314 функций.
Cобрал библиотеку с помощью MinGW. Объем libxlsxwriter.dll получился 1 415 Kb, 356 функций. Почему такая дискриминация?
			
			
									
						Cобрал библиотеку с помощью MinGW. Объем libxlsxwriter.dll получился 1 415 Kb, 356 функций. Почему такая дискриминация?
- RaFaeL
 - ✯ Ветеран ✯
 - Сообщения: 1417
 - Зарегистрирован: 24 Март 2009, 17:59
 - Откуда: НН
 - Благодарил (а): 12 раз
 - Поблагодарили: 2 раза
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
Ребят, вы что?
https://forum.clarionlife.net:443/viewt ... f=8&t=3830
Полгода назад все это я уже делал
P.S. Для уменьшения размера после MinGW надо использовать strip.exe
			
			
									
						https://forum.clarionlife.net:443/viewt ... f=8&t=3830
Полгода назад все это я уже делал
P.S. Для уменьшения размера после MinGW надо использовать strip.exe
- Дед Пахом
 - Старичок
 - Сообщения: 3346
 - Зарегистрирован: 07 Июль 2005, 16:51
 - Откуда: Москва, Россия
 - Благодарил (а): 20 раз
 - Поблагодарили: 56 раз
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
Так и я о том! За что он деньги хочет? Есть ли шаблоны для типичных задач?
С уважением, ДП
			
						- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8270
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Экспорт в Microsoft Excel (много)
Человек же написал: I have written a bit of C code ....
Судя по цене - тяжело далось ...
			
			
									
						Судя по цене - тяжело далось ...
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						- RaFaeL
 - ✯ Ветеран ✯
 - Сообщения: 1417
 - Зарегистрирован: 24 Март 2009, 17:59
 - Откуда: НН
 - Благодарил (а): 12 раз
 - Поблагодарили: 2 раза
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
Ну это делается элементарно - берется (любой имеющийся по вкусу) шаблон для выгрузки по OLE, вызовы OLE заменяются вызовами библиотекм. Себе я примерно так и встроил, там правда три варианта на выбор - OLE (ABExcel), BIFF8 (Taboga), XLSX (libxlsxwriter). Кода при наличии обертки добавлется очень мало, буквально строчек 20-30
- Дед Пахом
 - Старичок
 - Сообщения: 3346
 - Зарегистрирован: 07 Июль 2005, 16:51
 - Откуда: Москва, Россия
 - Благодарил (а): 20 раз
 - Поблагодарили: 56 раз
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
Это всё несерьёзно. Я хочу иметь кнопку на окне, по которой выгружу броуз в Эксель, со всем форматированием, шириной колонок, цветом и т.д. Или отчёт - с шапкой, деталями...
С уважением, ДП
			
						- 
				Ал
 - ✯ Ветеран ✯
 - Сообщения: 1059
 - Зарегистрирован: 08 Июль 2005, 6:48
 - Откуда: Россия
 - Благодарил (а): 1 раз
 - Поблагодарили: 1 раз
 
Экспорт в Microsoft Excel (много)
смотрел в праздники на питоне библиотеку xlsxwriter, примеры копипастом с сайта..., запускаются - все "скучно", штатно, с первой попытки...Yufil писал(а): 07 Ноябрь 2017, 19:35 А на Python, интересно, сколько займёт. Из Clarion вполне вызываемо, и выглядит попроще. Завтра развлекусь...
впрочем, так же как например, с openpyxl, которую "покрутил" до этого...
- Admin
 - Администратор
 - Сообщения: 4022
 - Зарегистрирован: 05 Июль 2005, 15:59
 - Откуда: Хабаровск
 - Благодарил (а): 59 раз
 - Поблагодарили: 42 раза
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
Все всё уже делали, у всех запускается, всем скучно.
Что же мы тогда тут эту тему, трем и трем!?
			
			
									
						Что же мы тогда тут эту тему, трем и трем!?
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
			
						- Admin
 - Администратор
 - Сообщения: 4022
 - Зарегистрирован: 05 Июль 2005, 15:59
 - Откуда: Хабаровск
 - Благодарил (а): 59 раз
 - Поблагодарили: 42 раза
 - Контактная информация:
 
Экспорт в Microsoft Excel (много)
В проекте что я компилировал описано какие функции экспортировать (XlsxWriter.def)
Код: Выделить всё
EXPORTS
    chart_add_series
    chart_axis_major_gridlines_set_line
    chart_axis_major_gridlines_set_visible
    chart_axis_minor_gridlines_set_line
    chart_axis_minor_gridlines_set_visible
    chart_axis_off
    chart_axis_set_crossing
    chart_axis_set_crossing_max
    chart_axis_set_display_units
    chart_axis_set_display_units_visible
    chart_axis_set_fill
    chart_axis_set_interval_tick
    chart_axis_set_interval_unit
    chart_axis_set_label_position
    chart_axis_set_line
    chart_axis_set_log_base
    chart_axis_set_major_tick_mark
    chart_axis_set_major_unit
    chart_axis_set_max
    chart_axis_set_min
    chart_axis_set_minor_tick_mark
    chart_axis_set_minor_unit
    chart_axis_set_name
    chart_axis_set_name_font
    chart_axis_set_name_range
    chart_axis_set_num_font
    chart_axis_set_num_format
    chart_axis_set_pattern
    chart_axis_set_position
    chart_axis_set_reverse
    chart_chartarea_set_fill
    chart_chartarea_set_line
    chart_chartarea_set_pattern
    chart_legend_delete_series
    chart_legend_set_font
    chart_legend_set_position
    chart_plotarea_set_fill
    chart_plotarea_set_line
    chart_plotarea_set_pattern
    chart_series_set_categories
    chart_series_set_error_bars
    chart_series_set_error_bars_direction
    chart_series_set_error_bars_endcap
    chart_series_set_error_bars_line
    chart_series_set_fill
    chart_series_set_invert_if_negative
    chart_series_set_labels
    chart_series_set_labels_font
    chart_series_set_labels_leader_line
    chart_series_set_labels_legend
    chart_series_set_labels_num_format
    chart_series_set_labels_options
    chart_series_set_labels_percentage
    chart_series_set_labels_position
    chart_series_set_labels_separator
    chart_series_set_line
    chart_series_set_marker_fill
    chart_series_set_marker_line
    chart_series_set_marker_pattern
    chart_series_set_marker_size
    chart_series_set_marker_type
    chart_series_set_name
    chart_series_set_name_range
    chart_series_set_pattern
    chart_series_set_points
    chart_series_set_smooth
    chart_series_set_trendline
    chart_series_set_trendline_equation
    chart_series_set_trendline_forecast
    chart_series_set_trendline_intercept
    chart_series_set_trendline_line
    chart_series_set_trendline_name
    chart_series_set_trendline_r_squared
    chart_series_set_values
    chart_set_drop_lines
    chart_set_high_low_lines
    chart_set_hole_size
    chart_set_rotation
    chart_set_series_gap
    chart_set_series_overlap
    chart_set_style
    chart_set_table
    chart_set_table_font
    chart_set_table_grid
    chart_set_up_down_bars
    chart_set_up_down_bars_format
    chart_show_blanks_as
    chart_show_hidden_data
    chart_title_off
    chart_title_set_name
    chart_title_set_name_font
    chart_title_set_name_range
    format_set_align
    format_set_bg_color
    format_set_bold
    format_set_border
    format_set_border_color
    format_set_bottom
    format_set_bottom_color
    format_set_diag_border
    format_set_diag_color
    format_set_diag_type
    format_set_fg_color
    format_set_font_charset
    format_set_font_color
    format_set_font_condense
    format_set_font_extend
    format_set_font_family
    format_set_font_name
    format_set_font_outline
    format_set_font_scheme
    format_set_font_script
    format_set_font_shadow
    format_set_font_size
    format_set_font_strikeout
    format_set_hidden
    format_set_indent
    format_set_italic
    format_set_left
    format_set_left_color
    format_set_num_format
    format_set_num_format_index
    format_set_pattern
    format_set_reading_order
    format_set_right
    format_set_right_color
    format_set_rotation
    format_set_shrink
    format_set_text_justlast
    format_set_text_wrap
    format_set_theme
    format_set_top
    format_set_top_color
    format_set_underline
    format_set_unlocked
    format_set_valign
    lxw_add_document_relationship
    lxw_add_drawing_object
    lxw_add_ms_package_relationship
    lxw_add_package_relationship
    lxw_add_worksheet_relationship
    lxw_app_add_heading_pair
    lxw_app_add_part_name
    lxw_app_assemble_xml_file
    lxw_app_free
    lxw_app_new
    lxw_basename
    lxw_chart_add_data_cache
    lxw_chart_assemble_xml_file
    lxw_chart_free
    lxw_chart_new
    lxw_col_to_name
    lxw_content_types_assemble_xml_file
    lxw_content_types_free
    lxw_content_types_new
    lxw_core_assemble_xml_file
    lxw_core_free
    lxw_core_new
    lxw_create_package
    lxw_ct_add_calc_chain
    lxw_ct_add_chart_name
    lxw_ct_add_custom_properties
    lxw_ct_add_default
    lxw_ct_add_drawing_name
    lxw_ct_add_override
    lxw_ct_add_shared_strings
    lxw_ct_add_worksheet_name
    lxw_custom_assemble_xml_file
    lxw_custom_free
    lxw_custom_new
    lxw_datetime_to_excel_date
    lxw_drawing_assemble_xml_file
    lxw_drawing_free
    lxw_drawing_new
    lxw_escape_control_characters
    lxw_escape_data
    lxw_format_check_color
    lxw_format_free
    lxw_format_get_border_key
    lxw_format_get_fill_key
    lxw_format_get_font_key
    lxw_format_get_xf_index
    lxw_format_new
    lxw_free_drawing_object
    lxw_free_relationships
    lxw_get_sst_index
    lxw_hash_free
    lxw_hash_key_exists
    lxw_hash_new
    lxw_insert_hash_element
    lxw_name_to_col
    lxw_name_to_col_2
    lxw_name_to_row
    lxw_name_to_row_2
    lxw_new_attribute_dbl
    lxw_new_attribute_int
    lxw_new_attribute_str
    lxw_packager_free
    lxw_packager_new
    lxw_quote_sheetname
    lxw_relationships_assemble_xml_file
    lxw_relationships_new
    lxw_rowcol_to_cell
    lxw_rowcol_to_cell_abs
    lxw_rowcol_to_formula_abs
    lxw_rowcol_to_range
    lxw_rowcol_to_range_abs
    lxw_sst_assemble_xml_file
    lxw_sst_free
    lxw_sst_new
    lxw_str_tolower
    lxw_strdup
    lxw_strerror
    lxw_styles_assemble_xml_file
    lxw_styles_free
    lxw_styles_new
    lxw_theme_assemble_xml_file
    lxw_theme_free
    lxw_theme_new
    lxw_tmpfile
    lxw_utf8_strlen
    lxw_workbook_assemble_xml_file
    lxw_workbook_free
    lxw_workbook_set_default_xf_indices
    lxw_worksheet_assemble_xml_file
    lxw_worksheet_find_cell
    lxw_worksheet_find_row
    lxw_worksheet_free
    lxw_worksheet_new
    lxw_worksheet_prepare_chart
    lxw_worksheet_prepare_image
    lxw_worksheet_write_single_row
    lxw_xml_data_element
    lxw_xml_declaration
    lxw_xml_empty_tag
    lxw_xml_empty_tag_unencoded
    lxw_xml_end_tag
    lxw_xml_start_tag
    lxw_xml_start_tag_unencoded
    new_workbook
    new_workbook_opt
    workbook_add_chart
    workbook_add_format
    workbook_add_worksheet
    workbook_close
    workbook_define_name
    workbook_get_worksheet_by_name
    workbook_new
    workbook_new_opt
    workbook_set_custom_property_boolean
    workbook_set_custom_property_datetime
    workbook_set_custom_property_integer
    workbook_set_custom_property_number
    workbook_set_custom_property_string
    workbook_set_properties
    workbook_validate_worksheet_name
    worksheet_activate
    worksheet_autofilter
    worksheet_center_horizontally
    worksheet_center_vertically
    worksheet_fit_to_pages
    worksheet_freeze_panes
    worksheet_freeze_panes_opt
    worksheet_gridlines
    worksheet_hide
    worksheet_hide_zero
    worksheet_insert_chart
    worksheet_insert_chart_opt
    worksheet_insert_image
    worksheet_insert_image_opt
    worksheet_merge_range
    worksheet_print_across
    worksheet_print_area
    worksheet_print_row_col_headers
    worksheet_protect
    worksheet_repeat_columns
    worksheet_repeat_rows
    worksheet_right_to_left
    worksheet_select
    worksheet_set_column
    worksheet_set_column_opt
    worksheet_set_default_row
    worksheet_set_first_sheet
    worksheet_set_footer
    worksheet_set_footer_opt
    worksheet_set_h_pagebreaks
    worksheet_set_header
    worksheet_set_header_opt
    worksheet_set_landscape
    worksheet_set_margins
    worksheet_set_page_view
    worksheet_set_paper
    worksheet_set_portrait
    worksheet_set_print_scale
    worksheet_set_row
    worksheet_set_row_opt
    worksheet_set_selection
    worksheet_set_start_page
    worksheet_set_tab_color
    worksheet_set_v_pagebreaks
    worksheet_set_zoom
    worksheet_split_panes
    worksheet_split_panes_opt
    worksheet_write_array_formula
    worksheet_write_array_formula_num
    worksheet_write_blank
    worksheet_write_boolean
    worksheet_write_datetime
    worksheet_write_formula
    worksheet_write_formula_num
    worksheet_write_number
    worksheet_write_string
    worksheet_write_url
    worksheet_write_url_opt
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
			
						- 
				Ал
 - ✯ Ветеран ✯
 - Сообщения: 1059
 - Зарегистрирован: 08 Июль 2005, 6:48
 - Откуда: Россия
 - Благодарил (а): 1 раз
 - Поблагодарили: 1 раз
 
Экспорт в Microsoft Excel (много)
Admin писал(а): 08 Ноябрь 2017, 4:09 Все всё уже делали, у всех запускается, всем скучно.
Что же мы тогда тут эту тему, трем и трем!?![]()
про питон: ..., ставим, запускаем и о ужас - там просто все работает, как в тестовых примерах...
про "трём"
