Вопрос № 73102: Уважаемые эксперты!
В Access 2000 Windows 2000 Prof.
Необходимо вывести на печать отчет о выполненных работах и использованных деталях.
Report в две колонки:
слева таблица с колонками
Дата, документ, клиент, сумма док, список раб...Вопрос № 73128: Здраствуйте, эксперты.
Подскажите, как заставить VBasic 6 читать по слову из Text1 и анализировать этот текст....Вопрос № 73179: У меня вопрос. Я хочу сделать эмулятор для джойстика, чтобы он посылал
нажатия клавиш в dos-программу.Я применил Public Sub, чтобы событие
распространялось на все окна,но программа
работала только в Windows.Как сделать так,чтобы DOS воспр...
Вопрос № 73.102
Уважаемые эксперты!
В Access 2000 Windows 2000 Prof.
Необходимо вывести на печать отчет о выполненных работах и использованных деталях.
Report в две колонки:
слева таблица с колонками
Дата, документ, клиент, сумма док, список работ из документа, список деталей из документа
Внизу сумма всех (сумма док) , НДС
Справа сводная таблица с колонками
название детали/работ ; количество (сумма по всем документам из таблицы слева); количество на складе на начало периода, расход за период, остаток на конец
Т.Е. движение по складу, который является машиной техобслуживания.
Информация берется из двух таблиц M_TTmov список документов, дата, клиент, сумма
И M_Ctmov список строк с работами и деталями по каждому документу.
Код, название, кол, цена.
Как организовать Report в 2 колонки, основанный на разных запросах?
В дополнение как организовать в Access 2000 хранение остатков на начало стандартного периода например месяц? В 1С это делается с помощью регистров есть ли такие инструменты в Access 2000? С помошью таблиц?
Спасибо
Отправлен: 29.01.2007, 12:46
Вопрос задала: Natali (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Vvvv
Здравствуйте, Natali!
По первому вопросу, я ничего подобного не делал, так что ниже следующее на предположении, но попробывать стоит:
Делаем два отчета тот который слева и тот который справа, так как они должны выглядеть в конечном виде, затем создаем третий отчет в который внедряем компонент "подчиненная форма/запрос" и с помощью мастера подключам левую часть (заранее подгатовленный отчет), тоже самое делаем для правой стороны, самое интересное и сложное передать параметры в подчененные запросы (отчеты), такие как начало, конец периода ну и что там потребуется... для этого нужна форма из которой можно задать параметры и вывести
отчет ну это тема другого разговора
По второму вопросу Access универсальная СУБД, а 1С специализированая, у неё все эти функции реализованы на уровне ядра программы. Для Access же все эти функции нужно либо реализовывать самим, либо искать в инете, мож кто ранее реализовал. Ну как вариант организовать процедуру закрытия месяца, которая бы расчитывала остатки на окончание месяца и сохраняла в таблице, но тут возникают проблемы корректировки документов за закрытый период..., надо будет перресчитывать итоги за закрытые периоды... ну т.д.
PS может пока не позно на 1С перескочить написать все на Торговле и Склад, там это все на уровне инстинктов...
Ответ отправил: Vvvv (статус: 1-ый класс)
Ответ отправлен: 29.01.2007, 14:05 Оценка за ответ: 4 Комментарий оценки: Спасибо за информацию Vvvv, особенно по 1 вопросу с отчетом. Конечно вначале форма с параметрами, потом отчет и Report. Мне как раз нужна была последовательность создания подчиненного запроса. Попробую и по ходу задам более конкретные вопросы. По второму вопросу. Как раз с 1С нет проблем, но переписать не могу так как программа большая и огромная база данных
и все переделывать труба. Надо написать процедуру создания, хранения и пересчета остатков именно в Access. Если есть конкретные идеи или источники почитать, посмотреть. Буду рада
Отвечает: Тесленко Евгений Алексеевич
Здравствуйте, Natali!
Я не использую отчеты Access, слишком трудоемко их проектирование, разработка и корректировка при необходимости.
В качестве отчетов Access гораздо удобнее использовать таблицу или шаблон Excel.
Для этого достаточно одного запроса и пары процедур, для сбора данных и передачи в Excel.
Информации по складу храниться достаточно много, приход, цена, поставщик, дата....
Рекомендую создать дополнительную таблицу "Остатки" и в ней сохранять "обезличеные" (без прихода, поставщика....) данные, (например:
наименование, количество, цена) после каждой операции с движением по складу.
Вам не только легко будет посмотреть остатки на начало месяца, но и вывести или откорректировать текущее наличие.
Удачи.
Евгений.
Ответ отправил: Тесленко Евгений Алексеевич (статус: 3-ий класс)
Ответ отправлен: 29.01.2007, 22:58 Оценка за ответ: 4 Комментарий оценки: Спасибо. Немного не ясно с датой. Если в таблице Остатки хранить только наименование, количество и цену, то как посмотреть остаток на начало месяца? Нужно добавить дату, склад. Если цена может меняться, то лучше сумму (кол*цену).
Вопрос № 73.128
Здраствуйте, эксперты.
Подскажите, как заставить VBasic 6 читать по слову из Text1 и анализировать этот текст.
Отправлен: 29.01.2007, 15:09
Вопрос задал: Alxx (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Dimm77
Здравствуйте, Alxx!
Не совсем понятно, что такое "анализировать".
А читать просто: перебирать побуквенно, когда встретился пробел - слово закончилось. См. в приложении - демонстрирует, как можно получить массив слов, разделённых пробелами. Если надо, можно вообще парсер (т.е. программа-разделитель на элементы) написать, используя нужные разделители разного типа, "." "," "/" и т.п.
Приложение:
--------- Цель жизни - жизнь.
Ответ отправил: Dimm77 (статус: 2-ой класс)
Ответ отправлен: 29.01.2007, 17:39
Отвечает: Alec Perle
Здравствуйте, Alxx!
В принципе (только в принципе) согласен с Dimm77, однако можно воспользоваться функцией Split(). См. пример
Приложение:
--------- Пессимист - это хорошо информированный оптимист (а оптимист - хорошо проинструктированный пессимист)
Ответ отправил: Alec Perle (статус: 3-ий класс)
Ответ отправлен: 29.01.2007, 21:39
Отвечает: PsySex
Здравствуйте, Alxx!
Другой вариант решения:
================================================
Private Sub Command1_Click()
Dim vWord As Variant
Dim sWord As String
Dim vWords As Variant
Dim sString As String
sString = Text1.Text
'если нужно то удалим сначала из строки запятые и точки
sString = Replace(sString, ",", "")
sString = Replace(sString, ".", "")
vWords = Split(sString, " ")
For Each vWord In vWords
sWord = CStr(vWord)
MsgBox sWord 'sWord содержит слово
Next
End Sub
==============================================
--------- Bom Shankar!
Ответ отправил: PsySex (статус: Студент)
Ответ отправлен: 29.01.2007, 22:02
Вопрос № 73.179
У меня вопрос. Я хочу сделать эмулятор для джойстика, чтобы он посылал
нажатия клавиш в dos-программу.Я применил Public Sub, чтобы событие
распространялось на все окна,но программа
работала только в Windows.Как сделать так,чтобы DOS воспринимал
джойстик.(У меня USB-джойстик(MaxFighter F-16U),с 4 клавишами)
Ответ - никак! Дисковая операционная система просто не "увидит" ваш джойстик (USB он там, или не USB). DOS воспринимает исключительно стандартную мышь и клавиатуру. Просто когда эта самая дисковая операционная система была создана, иных манипуляторов в природе не существовало.
Ответ отправил: VLK (статус: 9-ый класс)
Ответ отправлен: 29.01.2007, 21:36
Отвечает: Dimm77
Здравствуйте, Мамедов Ильяс/ILLIOS!
Я не согласен с VLK - можно перехватывать прерывания от джойстика, транслировать их в клавиатурные, и посылать окнам (т.е. размещать в буфере клавиатуры). Всё равно сессии ДОС, по крайней мере в NT и старше работают в эмуляторе, т.е. не напрямую с железом. К сожалению у меня нет сейчас времени на пример, но ;) практически уверен что это реально.
--------- Цель жизни - жизнь.
Ответ отправил: Dimm77 (статус: 2-ой класс)
Ответ отправлен: 30.01.2007, 10:43 Оценка за ответ: 3