Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.09.2012, 09:47   #1
Alchi09
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 21
По умолчанию Поиск определенных значений в таблице

Всем Привет. Требуется помощь. Задача следующая: Делаю выборку из базы данных в курсоре есть поля loc1, loc2, loc3...loc8 в них могут быть записаны значения или а1, а2, а3....a20 или .NULL. или пустое значение. И нужно узнать какие из этих значений есть в курсоре. И в зависимости от того какое значение из (а1,а2,а3,а4...а20) есть, уже будет выполняться определенное действие. Я себе уже всю голову сломал. Заранее спасибо.
Среда программирования Visual FoxPro
Alchi09 вне форума Ответить с цитированием
Старый 02.09.2012, 10:45   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А ты можешь раскрыть задание подробнее?
Ибо пока могу предложить только старый добрый фетч.
Код:
DIMENSION a(3)
a[1] = 'A'
a[2] = 'B'
a[3] = 'C'

go top
scan
 for each v in a
  if loc1=v then
   Действие
  endif
  if loc2=v then
   Действие
  endif
  if loc3=v then
   Действие
  endif
...
  if loc8=v then
   Действие
  endif

 endfor 
endscan
И версию фокса указать стоит.
I'm learning to live...

Последний раз редактировалось Stilet; 02.09.2012 в 10:49.
Stilet вне форума Ответить с цитированием
Старый 02.09.2012, 11:42   #3
Alchi09
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 21
По умолчанию

Ну есть ячейки на складе, название которых а1,a2,a3?...a20, и есть таблица с деталями и каждая деталь имеет свое место(максимум деталь может занимать 8 ячеек(loc1...loc8(location)) на складе определенное время, то есть пришла деталь, и нужно указать свободное место, где она будет хранится, а когда она ушла, нужно освободить это место. И вот мне нужно, что бы программа сканировала все записи, у которых занимают ячейки. То есть нужно узнать какие из ячеек свободны(то есть их нет в таблице), а какие заняты(есть в таблице). Как то так.
Alchi09 вне форума Ответить с цитированием
Старый 02.09.2012, 11:46   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Зачем тут курсор?
eval вне форума Ответить с цитированием
Старый 02.09.2012, 12:07   #5
Alchi09
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 21
По умолчанию

Для удобства, работа идет с базой данных на MSSQL, одни раз к ней подключаюсь, выгружаю все в курсор и делаю что мне надо, к тому же в этом случае выгружаю всего 8 полей (loc1...loc8), а не 15, быстрее будет происходить процесс обработки данных.
Alchi09 вне форума Ответить с цитированием
Старый 02.09.2012, 12:26   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Как то так.
Мне кажется что ту неуместно держать 8 полей...
Как то так...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.09.2012, 12:33   #7
Alchi09
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 21
По умолчанию

Нет 8 это с запасом, просто если партия большая то 1 вид деталей может занимать и 3 и 5 ячеек

Хорошо пускай даже если бы loc1, loc2, loc3, то смысл остается тем же

Последний раз редактировалось Stilet; 02.09.2012 в 13:42.
Alchi09 вне форума Ответить с цитированием
Старый 02.09.2012, 13:45   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
то смысл остается тем же
Я имел ввиду что не нужно создавать кучу полей. Нужно создать одно поле, куда будет указываться номер ячейки для инструмента, и в этой же записи код инструмента.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.09.2012, 13:53   #9
Alchi09
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 21
По умолчанию

нет деталь может придти и ее поместят в 1 ячейку, уйдет деталь ячейка освободится, придет совершенно другая деталь которую надо будет помещать в свободную ячейку, а много ячеек, потому что количество пришедших деталей может быть большим и будет занята не 1 ячейка а больше, нельзя привязывать определенные ячейки к определенным деталям
Alchi09 вне форума Ответить с цитированием
Старый 02.09.2012, 14:56   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
нет деталь может придти и ее поместят в 1 ячейку,
Ну прекрасно.
Допустим есть таблица Детали:
Код:
Код   Наименование
1       болт
2       гайка
И таблица их связывающая
Код:
Код   КодДетали    КодЯчейки
1         1                  1
2         1                  2
3         2                  7
Это будет означать что пришло два болта, которые разместили в ячейках 1 2 и одна гайка в 7

Никак тут лишние поля не нужны
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
поиск в экселе определенных строк danekne Microsoft Office Excel 1 27.04.2012 15:14
Автоматический поиск значений в таблице Freesty1er Microsoft Office Excel 11 31.10.2011 22:44
Сравнение определенных значений в строках k.soldatova Помощь студентам 1 01.07.2011 16:56
Автоматическое вычитание при вводе определенных значений DIMONRUS Microsoft Office Excel 11 17.06.2010 20:06
Перенос данных с листов при совпадении определенных значений ячеек Тантана Microsoft Office Excel 11 21.05.2010 14:06